Hi,
in our environment (Version 4.4.10.7) we use fibre channel LUNs, which we attach directly
to the VMs (as Direct LUN) with VirtIO-SCSI and SCSI pass-through enabled. The virtual
machines run an application that requires 4096 as physical_block_size and 512 as
logical_block_size. For this reason, we had to enable SCSI pass-through. Only with SCSI
pass-through the correct physical_block_size is passed through to the VM.
Now we have the following problem on just about every VM:
Error messages of the following form occur in the VMs (in /var/log/messages):
kernel: blk_update_request: I/O error, dev sdd, sector 352194592 op 0x1:(WRITE) flags
0xc800 phys_seg 16 prio class 0
This error message coincides with a crash of the application. The error message seems to
belong to SCSI.
We are currently trying to find an alternative to SCSI pass-through. We want to use VirtIO
and somehow pass the physical_block_size. Since the XML files of the VMs are transient, we
cannot make any changes there.
Does anyone have an idea what the error could be or how to pass the correct
physical_block_size? Could VDSM hooks help with this?
Thank you and regards
Miguel