From: Chenbo Xia Date: Fri, 19 Apr 2019 00:58:34 +0000 (+0000) Subject: crypto/virtio: check PCI config read X-Git-Url: http://git.droids-corp.org/?a=commitdiff_plain;h=691733e72bda85117adf0beb99e12794914fbb84;hp=fa68e40d6924ce5e35c8f44811ca6da31e0d2c64;p=dpdk.git crypto/virtio: check PCI config read Fix unchecked return value issue for rte_pci_read_config. Coverity issue: 302861 Fixes: 25500d4b8076 ("crypto/virtio: support device init") Cc: stable@dpdk.org Signed-off-by: Chenbo Xia Acked-by: Akhil Goyal --- diff --git a/drivers/crypto/virtio/virtio_pci.c b/drivers/crypto/virtio/virtio_pci.c index 0c0c644714..8137b3c5ac 100644 --- a/drivers/crypto/virtio/virtio_pci.c +++ b/drivers/crypto/virtio/virtio_pci.c @@ -397,9 +397,13 @@ virtio_read_caps(struct rte_pci_device *dev, struct virtio_crypto_hw *hw) hw->common_cfg = get_cfg_addr(dev, &cap); break; case VIRTIO_PCI_CAP_NOTIFY_CFG: - rte_pci_read_config(dev, &hw->notify_off_multiplier, + ret = rte_pci_read_config(dev, &hw->notify_off_multiplier, 4, pos + sizeof(cap)); - hw->notify_base = get_cfg_addr(dev, &cap); + if (ret != 4) + VIRTIO_CRYPTO_INIT_LOG_ERR( + "failed to read notify_off_multiplier: ret %d", ret); + else + hw->notify_base = get_cfg_addr(dev, &cap); break; case VIRTIO_PCI_CAP_DEVICE_CFG: hw->dev_cfg = get_cfg_addr(dev, &cap);