Re: [PATCH v2 1/3] vfio/type1: sanitize for overflow using check_*_overflow

Jason Gunthorpe
2025-10-09T01:15:37Z

On Wed, Oct 08, 2025 at 03:19:07PM -0700, Alex Mastro wrote:
> On Wed, Oct 08, 2025 at 08:39:21AM -0700, Alex Mastro wrote:
> > On Wed, Oct 08, 2025 at 09:19:30AM -0300, Jason Gunthorpe wrote:
> > > On Tue, Oct 07, 2025 at 09:08:46PM -0700, Alex Mastro wrote:
> > > > + if (check_add_overflow(user_iova, iova_size - 1, &iova_end))
> > > > + return -EINVAL;
> > >
> > > Let's be consistent with iommufd/etc, 'end' is start+size 'last' is start+size-1
> > >
> > > Otherwise it is super confusing :(
> >
> >
> > Both suggestions SGTM.
>
> I'm not sure about the latter anymore. There's somewhat pervasive precedent for
> using 'end' as the inclusive limit in vfio_iommu_type1.c. I am all for making
> things less confusing. I don't think I can introduce 'end' 'last' convention
> without preparing the existing code first.
>
> Thoughts? Spend another commit renaming this to 'last'? Tolerate inconsistency
> between vfio and iommufd?

IDK, if it is actually internally consistent and not using end
interchangably then it is probably Ok to keep doing it. If it is
already inconsistent then use last for new code and leave the old as
is?

Jason