diff --git a/msm/sde/sde_rm.c b/msm/sde/sde_rm.c index 15cdb906c598..20e1dc9473f2 100644 --- a/msm/sde/sde_rm.c +++ b/msm/sde/sde_rm.c @@ -2389,8 +2389,8 @@ struct sde_rm_rsvp *_sde_rm_poll_get_rsvp_nxt_locked(struct sde_rm *rm, usleep_range(sleep, sleep * 2); mutex_lock(&rm->rm_lock); } - - return rsvp_nxt; + /* make sure to get latest rsvp_next to avoid use after free issues */ + return _sde_rm_get_rsvp_nxt(rm, enc); } int sde_rm_reserve(