Skip to content

Commit da822a6

Browse files
committed
iommufd: Balance veventq->num_events inc/dec
commit 6fc85bb Author: Yi Liu <yi.l.liu@intel.com> Date: Mon Mar 24 05:00:34 2025 -0700 iommufd: Balance veventq->num_events inc/dec iommufd_veventq_fops_read() decrements veventq->num_events when a vevent is read out. However, the report path ony increments veventq->num_events for normal events. To be balanced, make the read path decrement num_events only for normal vevents. Fixes: e36ba5a ("iommufd: Add IOMMUFD_OBJ_VEVENTQ and IOMMUFD_CMD_VEVENTQ_ALLOC") Link: https://patch.msgid.link/r/20250324120034.5940-3-yi.l.liu@intel.com Signed-off-by: Yi Liu <yi.l.liu@intel.com> Reviewed-by: Nicolin Chen <nicolinc@nvidia.com> Tested-by: Nicolin Chen <nicolinc@nvidia.com> Signed-off-by: Jason Gunthorpe <jgg@nvidia.com> (cherry picked from commit 6fc85bb) Signed-off-by: Jerry Snitselaar <jsnitsel@redhat.com> Upstream-Status: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git JIRA: https://issues.redhat.com/browse/RHEL-73596
1 parent 527b9e4 commit da822a6

File tree

1 file changed

+2
-1
lines changed

1 file changed

+2
-1
lines changed

drivers/iommu/iommufd/eventq.c

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -385,7 +385,8 @@ static ssize_t iommufd_veventq_fops_read(struct file *filep, char __user *buf,
385385
break;
386386
}
387387
spin_lock(&eventq->lock);
388-
veventq->num_events--;
388+
if (!vevent_for_lost_events_header(cur))
389+
veventq->num_events--;
389390
spin_unlock(&eventq->lock);
390391
done += cur->data_len;
391392
kfree(cur);

0 commit comments

Comments
 (0)