Re: [PATCH] staging: vme_user: fix flush_image leak in tsi148 bridge
Greg Kroah-Hartman <[email protected]>
| Newsgroups | org.kernel.vger.stable,dev.linux.lists.linux-staging,org.kernel.vger.linux-kernel |
|---|---|
| Message-ID | <2026081240-shanty-prepay-648e@gregkh> |
On Mon, Jul 27, 2026 at 06:15:34PM +0700, Cong Nguyen wrote:
> When error checking is enabled (err_chk=1), tsi148_probe() allocates an
> extra master window resource, tsi148_device->flush_image, which is used
> to flush posted writes by reading back over the VME bus. Unlike the
> regular master windows, this resource is not linked into
> tsi148_bridge->master_resources.
>
> Because it is not on any resource list, it is freed neither by the probe
> error path (which only walks the master_resources list) nor by
> tsi148_remove(), so it is leaked whenever err_chk is set and either
> probe fails after the allocation or the device is unbound / the module
> is unloaded.
>
> Free flush_image in both the probe error path and tsi148_remove(). This
> is safe when err_chk is disabled: tsi148_device is allocated with
> kzalloc() so flush_image is NULL and kfree(NULL) is a no-op.
>
> Fixes: d22b8ed9a3b0 ("Staging: vme: add Tundra TSI148 VME-PCI Bridge driver")
> Cc: [email protected]
> Signed-off-by: Cong Nguyen <[email protected]>
> ---
> drivers/staging/vme_user/vme_tsi148.c | 3 +++
> 1 file changed, 3 insertions(+)
How was this found and tested?
Did you forget an Assisted-by: tag?
thanks,
greg k-h