mirror of
https://github.com/aljazceru/kata-containers.git
synced 2025-12-22 16:54:25 +01:00
cleanup: remove ununsed device interface function "GetDeviceInfo()" Signed-off-by: Zhang Wei <zhangwei555@huawei.com>
70 lines
2.1 KiB
Go
70 lines
2.1 KiB
Go
// Copyright (c) 2017-2018 Intel Corporation
|
|
// Copyright (c) 2018 Huawei Corporation
|
|
//
|
|
// SPDX-License-Identifier: Apache-2.0
|
|
//
|
|
|
|
package api
|
|
|
|
import (
|
|
"github.com/sirupsen/logrus"
|
|
|
|
"github.com/kata-containers/runtime/virtcontainers/device/config"
|
|
)
|
|
|
|
var devLogger = logrus.FieldLogger(logrus.New())
|
|
|
|
// SetLogger sets the logger for device api package.
|
|
func SetLogger(logger logrus.FieldLogger) {
|
|
devLogger = logger
|
|
}
|
|
|
|
// DeviceLogger returns logger for device management
|
|
func DeviceLogger() *logrus.Entry {
|
|
return devLogger.WithField("subsystem", "device")
|
|
}
|
|
|
|
// DeviceReceiver is an interface used for accepting devices
|
|
// a device should be attached/added/plugged to a DeviceReceiver
|
|
type DeviceReceiver interface {
|
|
// these are for hotplug/hot-unplug devices to/from hypervisor
|
|
HotplugAddDevice(Device, config.DeviceType) error
|
|
HotplugRemoveDevice(Device, config.DeviceType) error
|
|
|
|
// this is only for virtio-blk and virtio-scsi support
|
|
GetAndSetSandboxBlockIndex() (int, error)
|
|
DecrementSandboxBlockIndex() error
|
|
|
|
// this is for appending device to hypervisor boot params
|
|
AppendDevice(Device) error
|
|
}
|
|
|
|
// Device is the virtcontainers device interface.
|
|
type Device interface {
|
|
Attach(DeviceReceiver) error
|
|
Detach(DeviceReceiver) error
|
|
// ID returns device identifier
|
|
DeviceID() string
|
|
// DeviceType indicates which kind of device it is
|
|
// e.g. block, vfio or vhost user
|
|
DeviceType() config.DeviceType
|
|
// GetDeviceDrive returns device specific data used for hotplugging by hypervisor
|
|
// Caller could cast the return value to device specific struct
|
|
// e.g. Block device returns *config.BlockDrive and
|
|
// vfio device returns *config.VFIODrive
|
|
GetDeviceDrive() interface{}
|
|
// IsAttached checks if the device is attached
|
|
IsAttached() bool
|
|
}
|
|
|
|
// DeviceManager can be used to create a new device, this can be used as single
|
|
// device management object.
|
|
type DeviceManager interface {
|
|
NewDevice(config.DeviceInfo) (Device, error)
|
|
AttachDevice(string, DeviceReceiver) error
|
|
DetachDevice(string, DeviceReceiver) error
|
|
IsDeviceAttached(string) bool
|
|
GetDeviceByID(string) Device
|
|
GetAllDevices() []Device
|
|
}
|