Message ID | 20200712152453.27510-1-trix@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | drm/bridge: sil_sii8620: initialize return of sii8620_readb | expand |
Hi Tom, Thank you for the patch. On Sun, Jul 12, 2020 at 08:24:53AM -0700, trix@redhat.com wrote: > From: Tom Rix <trix@redhat.com> > > clang static analysis flags this error > > sil-sii8620.c:184:2: warning: Undefined or garbage value > returned to caller [core.uninitialized.UndefReturn] > return ret; > ^~~~~~~~~~ > > sii8620_readb calls sii8620_read_buf. > sii8620_read_buf can return without setting its output > pararmeter 'ret'. > > So initialize ret. > > Fixes: ce6e153f414a ("drm/bridge: add Silicon Image SiI8620 driver") > > Signed-off-by: Tom Rix <trix@redhat.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> > --- > drivers/gpu/drm/bridge/sil-sii8620.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/bridge/sil-sii8620.c b/drivers/gpu/drm/bridge/sil-sii8620.c > index 3540e4931383..da933d477e5f 100644 > --- a/drivers/gpu/drm/bridge/sil-sii8620.c > +++ b/drivers/gpu/drm/bridge/sil-sii8620.c > @@ -178,7 +178,7 @@ static void sii8620_read_buf(struct sii8620 *ctx, u16 addr, u8 *buf, int len) > > static u8 sii8620_readb(struct sii8620 *ctx, u16 addr) > { > - u8 ret; > + u8 ret = 0; > > sii8620_read_buf(ctx, addr, &ret, 1); > return ret;
On 12.07.2020 17:24, trix@redhat.com wrote: > From: Tom Rix <trix@redhat.com> > > clang static analysis flags this error > > sil-sii8620.c:184:2: warning: Undefined or garbage value > returned to caller [core.uninitialized.UndefReturn] > return ret; > ^~~~~~~~~~ > > sii8620_readb calls sii8620_read_buf. > sii8620_read_buf can return without setting its output > pararmeter 'ret'. > > So initialize ret. > > Fixes: ce6e153f414a ("drm/bridge: add Silicon Image SiI8620 driver") > > Signed-off-by: Tom Rix <trix@redhat.com> > --- > drivers/gpu/drm/bridge/sil-sii8620.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/bridge/sil-sii8620.c b/drivers/gpu/drm/bridge/sil-sii8620.c > index 3540e4931383..da933d477e5f 100644 > --- a/drivers/gpu/drm/bridge/sil-sii8620.c > +++ b/drivers/gpu/drm/bridge/sil-sii8620.c > @@ -178,7 +178,7 @@ static void sii8620_read_buf(struct sii8620 *ctx, u16 addr, u8 *buf, int len) > > static u8 sii8620_readb(struct sii8620 *ctx, u16 addr) > { > - u8 ret; > + u8 ret = 0; In theory it shouldn't cause any harm, but this protections makes things simpler. Reviewed-by: Andrzej Hajda <a.hajda@samsung.com> Regards Andrzej > > sii8620_read_buf(ctx, addr, &ret, 1); > return ret;
Hi Tom. On Sun, Jul 12, 2020 at 08:24:53AM -0700, trix@redhat.com wrote: > From: Tom Rix <trix@redhat.com> > > clang static analysis flags this error > > sil-sii8620.c:184:2: warning: Undefined or garbage value > returned to caller [core.uninitialized.UndefReturn] > return ret; > ^~~~~~~~~~ > > sii8620_readb calls sii8620_read_buf. > sii8620_read_buf can return without setting its output > pararmeter 'ret'. > > So initialize ret. > > Fixes: ce6e153f414a ("drm/bridge: add Silicon Image SiI8620 driver") > > Signed-off-by: Tom Rix <trix@redhat.com> Thnaks, applied to drm-misc-next as the fix is not urgent. Sam > --- > drivers/gpu/drm/bridge/sil-sii8620.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/bridge/sil-sii8620.c b/drivers/gpu/drm/bridge/sil-sii8620.c > index 3540e4931383..da933d477e5f 100644 > --- a/drivers/gpu/drm/bridge/sil-sii8620.c > +++ b/drivers/gpu/drm/bridge/sil-sii8620.c > @@ -178,7 +178,7 @@ static void sii8620_read_buf(struct sii8620 *ctx, u16 addr, u8 *buf, int len) > > static u8 sii8620_readb(struct sii8620 *ctx, u16 addr) > { > - u8 ret; > + u8 ret = 0; > > sii8620_read_buf(ctx, addr, &ret, 1); > return ret; > -- > 2.18.1 > > _______________________________________________ > dri-devel mailing list > dri-devel@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/dri-devel
diff --git a/drivers/gpu/drm/bridge/sil-sii8620.c b/drivers/gpu/drm/bridge/sil-sii8620.c index 3540e4931383..da933d477e5f 100644 --- a/drivers/gpu/drm/bridge/sil-sii8620.c +++ b/drivers/gpu/drm/bridge/sil-sii8620.c @@ -178,7 +178,7 @@ static void sii8620_read_buf(struct sii8620 *ctx, u16 addr, u8 *buf, int len) static u8 sii8620_readb(struct sii8620 *ctx, u16 addr) { - u8 ret; + u8 ret = 0; sii8620_read_buf(ctx, addr, &ret, 1); return ret;