mirror of
https://github.com/torvalds/linux.git
synced 2026-10-16 12:50:02 +02:00
In nvkm_acr_oneinit(), nvkm_kmap(acr->wpr) is invoked unconditionally
at line 309 to obtain a mapping reference. Additionally, when both
acr->wpr_fw and acr->wpr_comp are present, a second nvkm_kmap() is
called inside the conditional block. Both mappings are expected to be
released by nvkm_done(acr->wpr) at line 320 before the function returns
successfully.
However, when a mismatch is detected during the loop within the
conditional block, the function returns -EINVAL at line 318 without
calling nvkm_done(). This results in a leak of the kmap reference(s)
acquired earlier.
Fix the issue by invoking nvkm_done(acr->wpr) prior to the early return
to ensure proper release of the mapping references.
Fixes:
|
||
|---|---|---|
| .. | ||
| base.c | ||
| ga100.c | ||
| ga102.c | ||
| gm20b.c | ||
| gm200.c | ||
| gp10b.c | ||
| gp102.c | ||
| gp108.c | ||
| gv100.c | ||
| Kbuild | ||
| lsfw.c | ||
| priv.h | ||
| tu102.c | ||