mirror of
https://github.com/kata-containers/kata-containers.git
synced 2025-04-29 20:24:31 +00:00
runtime: Don't repeat GetDeviceByID between appendDevices() and append*()
Both appendBlockDevice and appendVhostUserBlkDevice start by using GetDeviceByID to lookup the api.Device object corresponding to their ContainerDevice object. However their common caller, appendDevices() has already done this. This changes it so the looked up api.Device is passed to the individual append*Device() functions. This slightly reduces duplicated work, but more importantly it makes it clearer that append*Device() don't need to check for a nil result from GetDeviceByID, since the caller has already done that. Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
This commit is contained in:
parent
ad45c52fbe
commit
ebd7b61884
@ -1144,9 +1144,7 @@ func (k *kataAgent) handleShm(mounts []specs.Mount, sandbox *Sandbox) {
|
||||
}
|
||||
}
|
||||
|
||||
func (k *kataAgent) appendBlockDevice(dev ContainerDevice, c *Container) *grpc.Device {
|
||||
device := c.sandbox.devManager.GetDeviceByID(dev.ID)
|
||||
|
||||
func (k *kataAgent) appendBlockDevice(dev ContainerDevice, device api.Device, c *Container) *grpc.Device {
|
||||
d, ok := device.GetDeviceInfo().(*config.BlockDrive)
|
||||
if !ok || d == nil {
|
||||
k.Logger().WithField("device", device).Error("malformed block drive")
|
||||
@ -1187,9 +1185,7 @@ func (k *kataAgent) appendBlockDevice(dev ContainerDevice, c *Container) *grpc.D
|
||||
return kataDevice
|
||||
}
|
||||
|
||||
func (k *kataAgent) appendVhostUserBlkDevice(dev ContainerDevice, c *Container) *grpc.Device {
|
||||
device := c.sandbox.devManager.GetDeviceByID(dev.ID)
|
||||
|
||||
func (k *kataAgent) appendVhostUserBlkDevice(dev ContainerDevice, device api.Device, c *Container) *grpc.Device {
|
||||
d, ok := device.GetDeviceInfo().(*config.VhostUserDeviceAttrs)
|
||||
if !ok || d == nil {
|
||||
k.Logger().WithField("device", device).Error("malformed vhost-user-blk drive")
|
||||
@ -1217,9 +1213,9 @@ func (k *kataAgent) appendDevices(deviceList []*grpc.Device, c *Container) []*gr
|
||||
|
||||
switch device.DeviceType() {
|
||||
case config.DeviceBlock:
|
||||
kataDevice = k.appendBlockDevice(dev, c)
|
||||
kataDevice = k.appendBlockDevice(dev, device, c)
|
||||
case config.VhostUserBlk:
|
||||
kataDevice = k.appendVhostUserBlkDevice(dev, c)
|
||||
kataDevice = k.appendVhostUserBlkDevice(dev, device, c)
|
||||
}
|
||||
|
||||
if kataDevice == nil {
|
||||
|
Loading…
Reference in New Issue
Block a user