Skip to content

Cannot copy large file into VM when using OCF in SPDK #709

@Second222None

Description

@Second222None

Description

When copying a large file (~4000MB) into VM disk provided by SPDK with OCF, vhost outputs the following:

VHOST_CONFIG: vring call idx:2 file:86
VHOST_CONFIG: read message VHOST_USER_SET_VRING_CALL
VHOST_CONFIG: vring call idx:3 file:87
[2022-04-21 17:19:19.502524] Cache1.Aio1: Failed to write data to cache sector: 1083264, bytes: 65536
[2022-04-21 17:19:19.502680] Cache1.Aio1: Failed to write data to cache sector: 1083392, bytes: 65536
[2022-04-21 17:19:19.502733] Cache1.Aio1: Failed to write data to cache sector: 1083520, bytes: 65536
[2022-04-21 17:19:19.502776] Cache1.Aio1: Failed to write data to cache sector: 1083648, bytes: 65536
[2022-04-21 17:19:19.502842] Cache1.Aio1: Failed to write data to cache sector: 1083776, bytes: 65536

The log comes from src/engine/engine_wb.c:108.

BTW, there is no error for small files with wb policy.
wt policy works for all files.

Expected Behavior

Actual Behavior

Steps to Reproduce

  1. /root/spdk/scripts/rpc.py bdev_nvme_attach_controller -b Nvme0 -t pcie -a 0000:81.00.0
  2. /root/spdk/scripts/rpc.py bdev_split_create -s 50000 Nvme0n1 2
  3. /root/spdk/scripts/rpc.py bdev_aio_create /dev/sdd Aio1
  4. /root/spdk/scripts/rpc.py bdev_ocf_create Cache1 wb Nvme0n1p0 Aio1 --cache-line-size 4
  5. /root/spdk/scripts/rpc.py vhost_create_blk_controller --cpumask 0x1 vhostblk0 Cache1
  6. Attach vhostblk0 to VM and start it.
  7. scp -r largefile.4G root@$VMIP:/ocfdisk

Context

Possible Fix

Logs

Your Environment

  • OCF version (commit hash or tag): commit 865d29d (HEAD, tag: v21.6)
  • Operating System: openEuler21.09
  • Kernel version: 5.10
  • SPDK version: d71a91bb74b9e8f62ef52b0c5784325ee76c2ede (HEAD -> master, origin/master, origin/HEAD)
  • HugePage Size: 2M
  • Cache device type (NAND/Optane/other): NVMe SSD
  • Core device type (HDD/SSD/other): HDD
  • Configuration:
    • Cache mode: (default: wt) wb
    • Cache line size: (default: 4) 4
  • Other (e.g. lsblk, lsscsi)

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions