[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20201024134752.GF18329@kadam>
Date: Sat, 24 Oct 2020 16:47:52 +0300
From: Dan Carpenter <dan.carpenter@...cle.com>
To: Christoph Hellwig <hch@....de>
Cc: Jani Nikula <jani.nikula@...ux.intel.com>,
Joonas Lahtinen <joonas.lahtinen@...ux.intel.com>,
Rodrigo Vivi <rodrigo.vivi@...el.com>,
David Airlie <airlied@...ux.ie>,
Daniel Vetter <daniel@...ll.ch>,
Tvrtko Ursulin <tvrtko.ursulin@...el.com>,
Andrew Morton <akpm@...ux-foundation.org>,
Matthew Auld <matthew.auld@...el.com>,
Chris Wilson <chris@...is-wilson.co.uk>,
intel-gfx@...ts.freedesktop.org, dri-devel@...ts.freedesktop.org,
linux-kernel@...r.kernel.org, kernel-janitors@...r.kernel.org
Subject: Re: [PATCH] drm/i915: Fix a crash in shmem_pin_map() error handling
On Fri, Oct 23, 2020 at 02:19:41PM +0200, Christoph Hellwig wrote:
> > diff --git a/drivers/gpu/drm/i915/gt/shmem_utils.c b/drivers/gpu/drm/i915/gt/shmem_utils.c
> > index f011ea42487e..7eb542018219 100644
> > --- a/drivers/gpu/drm/i915/gt/shmem_utils.c
> > +++ b/drivers/gpu/drm/i915/gt/shmem_utils.c
> > @@ -52,8 +52,9 @@ struct file *shmem_create_from_object(struct drm_i915_gem_object *obj)
> > void *shmem_pin_map(struct file *file)
> > {
> > struct page **pages;
> > - size_t n_pages, i;
> > + size_t n_pages;
> > void *vaddr;
> > + int i;
> >
> > n_pages = file->f_mapping->host->i_size >> PAGE_SHIFT;
> > pages = kvmalloc_array(n_pages, sizeof(*pages), GFP_KERNEL);
>
> This assumes we never have more than INT_MAX worth of pages before
> a failure.
Doh. Yeah. My bad.
regards,
dan carpenter
Powered by blists - more mailing lists