This cast is confusing... The "start" variable is an unsigned int. We absolutely do not want to cast it to a negative int so why is the cast there? It turns out, when you look at the context, it's a no-op and we can just remove it. Signed-off-by: Dan Carpenter <dan.carpenter@xxxxxxxxxx> diff --git a/drivers/vfio/pci/vfio_pci_intrs.c b/drivers/vfio/pci/vfio_pci_intrs.c index 1c46045b0e7f..2724fed62129 100644 --- a/drivers/vfio/pci/vfio_pci_intrs.c +++ b/drivers/vfio/pci/vfio_pci_intrs.c @@ -368,7 +368,7 @@ static int vfio_msi_set_block(struct vfio_pci_device *vdev, unsigned start, } if (ret) { - for (--j; j >= (int)start; j--) + for (--j; j >= start; j--) vfio_msi_set_vector_signal(vdev, j, -1, msix); }