lkml.org 
[lkml]   [2021]   [Mar]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH][next] scsi: sg: Fix use of pointer sfp after it has been kfree'd
From
Date
On 2021-03-11 5:37 a.m., Colin King wrote:
> From: Colin Ian King <colin.king@canonical.com>
>
> Currently SG_LOG is referencing sfp after it has been kfree'd which
> is probably a bad thing to do. Fix this by kfree'ing sfp after
> SG_LOG.
>
> Addresses-Coverity: ("Use after free")
> Fixes: af1fc95db445 ("scsi: sg: Replace rq array with xarray")
> Signed-off-by: Colin Ian King <colin.king@canonical.com>

Acked-by: Douglas Gilbert <dgilbert@interlog.com>

Thanks.

> ---
> drivers/scsi/sg.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/scsi/sg.c b/drivers/scsi/sg.c
> index 2d4bbc1a1727..79f05afa4407 100644
> --- a/drivers/scsi/sg.c
> +++ b/drivers/scsi/sg.c
> @@ -3799,10 +3799,10 @@ sg_add_sfp(struct sg_device *sdp)
> if (rbuf_len > 0) {
> srp = sg_build_reserve(sfp, rbuf_len);
> if (IS_ERR(srp)) {
> - kfree(sfp);
> err = PTR_ERR(srp);
> SG_LOG(1, sfp, "%s: build reserve err=%ld\n", __func__,
> -err);
> + kfree(sfp);
> return ERR_PTR(err);
> }
> if (srp->sgat_h.buflen < rbuf_len) {
>

\
 
 \ /
  Last update: 2021-03-11 18:18    [W:0.041 / U:0.044 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site