On Tue, Oct 03, 2017 at 09:38:11AM -0600, Jordan Crouse wrote: > drm_gem_get_pages() and drm_gem_put_pages() calculate the number > of pages to operate on from obj->size which is a size_t. Use > similarly sized variables to calculate and iterate through the > pages to avoid possibly losing bits from the page calculation. > > Signed-off-by: Jordan Crouse <jcrouse@xxxxxxxxxxxxxx> Not sure it wouldn't be better to move over to u64? In theory you could have a gpu with huge amounts of vram on a 32bit kernel, like PAE. There's also rough consensus that size_t is just an all-around evil type for anything :-) Still an issue of course, just probably with a differen (and likely more invasive) fix. -Daniel > --- > drivers/gpu/drm/drm_gem.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/gpu/drm/drm_gem.c b/drivers/gpu/drm/drm_gem.c > index af62017..a8c146d 100644 > --- a/drivers/gpu/drm/drm_gem.c > +++ b/drivers/gpu/drm/drm_gem.c > @@ -550,7 +550,7 @@ struct page **drm_gem_get_pages(struct drm_gem_object *obj) > { > struct address_space *mapping; > struct page *p, **pages; > - int i, npages; > + size_t i, npages; > > /* This is the shared memory object that backs the GEM resource */ > mapping = obj->filp->f_mapping; > @@ -603,7 +603,7 @@ struct page **drm_gem_get_pages(struct drm_gem_object *obj) > void drm_gem_put_pages(struct drm_gem_object *obj, struct page **pages, > bool dirty, bool accessed) > { > - int i, npages; > + size_t i, npages; > > /* We already BUG_ON() for non-page-aligned sizes in > * drm_gem_object_init(), so we should never hit this unless > -- > 1.9.1 > > _______________________________________________ > dri-devel mailing list > dri-devel@xxxxxxxxxxxxxxxxxxxxx > https://lists.freedesktop.org/mailman/listinfo/dri-devel -- Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch -- To unsubscribe from this list: send the line "unsubscribe linux-arm-msm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html