[Intel-xe] [PATCH] drm/xe: Prevent null ptr dereference
Mishra, Pallavi
pallavi.mishra at intel.com
Tue Nov 7 03:41:10 UTC 2023
> -----Original Message-----
> From: Brost, Matthew <matthew.brost at intel.com>
> Sent: Monday, November 6, 2023 4:15 PM
> To: Mishra, Pallavi <pallavi.mishra at intel.com>; Welty, Brian
> <brian.welty at intel.com>; intel-xe at lists.freedesktop.org
> Subject: RE: [Intel-xe] [PATCH] drm/xe: Prevent null ptr dereference
>
> I'd lean towards fixing the test rather than the migrate code.
Yes I intend to do that now. Brian also had the same suggestion.
Thanks!
>
> Matt
>
> -----Original Message-----
> From: Intel-xe <intel-xe-bounces at lists.freedesktop.org> On Behalf Of Mishra,
> Pallavi
> Sent: Monday, November 6, 2023 1:31 PM
> To: Welty, Brian <brian.welty at intel.com>; intel-xe at lists.freedesktop.org
> Subject: Re: [Intel-xe] [PATCH] drm/xe: Prevent null ptr dereference
>
>
>
> > -----Original Message-----
> > From: Welty, Brian <brian.welty at intel.com>
> > Sent: Monday, November 6, 2023 11:58 AM
> > To: Mishra, Pallavi <pallavi.mishra at intel.com>;
> > intel-xe at lists.freedesktop.org
> > Subject: Re: [Intel-xe] [PATCH] drm/xe: Prevent null ptr dereference
> >
> >
> >
> > On 11/3/2023 2:19 PM, Pallavi Mishra wrote:
> > > In scenarios where vm is not initialized, use xe_migrate to get the
> > > address.
> >
> > Can you describe this scenario?
> > Is it legal to call xe_migrate_update_pgtables without a vm?
> > What code path does that?
>
> I see this in xe_live_ktest in migrate subtest. test_pt_update passes vm as
> NULL.
>
> >
> > Just trying to understand if shouldn't be instead returning an error
> > if vm is NULL. Or that isn't some other driver bug.
> >
> > -Brian
> >
> >
> > >
> > > Signed-off-by: Pallavi Mishra <pallavi.mishra at intel.com>
> > > ---
> > > drivers/gpu/drm/xe/xe_migrate.c | 5 ++++-
> > > 1 file changed, 4 insertions(+), 1 deletion(-)
> > >
> > > diff --git a/drivers/gpu/drm/xe/xe_migrate.c
> > > b/drivers/gpu/drm/xe/xe_migrate.c index e6a31f90ebdb..f79ec8e4ae4e
> > > 100644
> > > --- a/drivers/gpu/drm/xe/xe_migrate.c
> > > +++ b/drivers/gpu/drm/xe/xe_migrate.c
> > > @@ -1296,7 +1296,10 @@ xe_migrate_update_pgtables(struct xe_migrate
> > > *m,
> > >
> > > xe_tile_assert(tile, pt_bo->size == SZ_4K);
> > >
> > > - addr = vm->pt_ops->pte_encode_bo(pt_bo, 0,
> > pat_index, 0);
> > > + if (vm)
> > > + addr = vm->pt_ops->pte_encode_bo(pt_bo, 0,
> > pat_index, 0);
> > > + else
> > > + addr = m->q->vm->pt_ops-
> > >pte_encode_bo(pt_bo, 0, pat_index, 0);
> > > bb->cs[bb->len++] = lower_32_bits(addr);
> > > bb->cs[bb->len++] = upper_32_bits(addr);
> > > }
More information about the Intel-xe
mailing list