qemu: remove multidev in qemu/fsdev parameter on arm64

As the current qemu of arm64 is so old, the new multidev parameter
in 9pfsdev is not supported on arm64, so disabled it temporarily.

Fixes:#466
Signed-off-by: Jianyong Wu <jianyong.wu@arm.com>
This commit is contained in:
Jianyong Wu 2020-07-29 14:01:58 +08:00
parent 6fc7d4b238
commit 1637e9d367
2 changed files with 22 additions and 1 deletions

View File

@ -464,12 +464,21 @@ func generic9PVolume(volume types.Volume, nestedRun bool) govmmQemu.FSDevice {
}
}
func genericAppend9PVolume(devices []govmmQemu.Device, volume types.Volume, nestedRun bool) (govmmQemu.FSDevice, error) {
d := generic9PVolume(volume, nestedRun)
return d, nil
}
func (q *qemuArchBase) append9PVolume(devices []govmmQemu.Device, volume types.Volume) ([]govmmQemu.Device, error) {
if volume.MountTag == "" || volume.HostPath == "" {
return devices, nil
}
d := generic9PVolume(volume, q.nestedRun)
d, err := genericAppend9PVolume(devices, volume, q.nestedRun)
if err != nil {
return nil, err
}
devices = append(devices, d)
return devices, nil
}

View File

@ -11,6 +11,7 @@ import (
"time"
govmmQemu "github.com/intel/govmm/qemu"
"github.com/kata-containers/kata-containers/src/runtime/virtcontainers/types"
)
type qemuArm64 struct {
@ -107,3 +108,14 @@ func (q *qemuArm64) setIgnoreSharedMemoryMigrationCaps(_ context.Context, _ *gov
func (q *qemuArm64) appendIOMMU(devices []govmmQemu.Device) ([]govmmQemu.Device, error) {
return devices, fmt.Errorf("Arm64 architecture does not support vIOMMU")
}
func (q *qemuArm64) append9PVolume(devices []govmmQemu.Device, volume types.Volume) ([]govmmQemu.Device, error) {
d, err := genericAppend9PVolume(devices, volume, q.nestedRun)
if err != nil {
return nil, err
}
d.Multidev = ""
devices = append(devices, d)
return devices, nil
}