From mboxrd@z Thu Jan 1 00:00:00 1970 From: walter harms Date: Fri, 07 Jun 2019 07:39:57 +0000 Subject: Re: [PATCH 1/2] drm/bridge: sii902x: re-order conditions to prevent out of bounds read Message-Id: <5CFA14CD.5010502@bfs.de> List-Id: References: <20190607072704.GA25229@mwanda> In-Reply-To: <20190607072704.GA25229@mwanda> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: Dan Carpenter Cc: David Airlie , kernel-janitors@vger.kernel.org, Jyri Sarha , dri-devel@lists.freedesktop.org, Laurent Pinchart Am 07.06.2019 09:27, schrieb Dan Carpenter: > This should check that "i" is within bounds before checking reading from > the array. > > Fixes: ff5781634c41 ("drm/bridge: sii902x: Implement HDMI audio support") > Signed-off-by: Dan Carpenter > --- > drivers/gpu/drm/bridge/sii902x.c | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/drivers/gpu/drm/bridge/sii902x.c b/drivers/gpu/drm/bridge/sii902x.c > index d6f98d388ac2..6b03616d6bc3 100644 > --- a/drivers/gpu/drm/bridge/sii902x.c > +++ b/drivers/gpu/drm/bridge/sii902x.c > @@ -589,8 +589,8 @@ static int sii902x_audio_hw_params(struct device *dev, void *data, > if (ret) > goto out; > > - for (i = 0; sii902x->audio.i2s_fifo_sequence[i] && > - i < ARRAY_SIZE(sii902x->audio.i2s_fifo_sequence); i++) > + for (i = 0; i < ARRAY_SIZE(sii902x->audio.i2s_fifo_sequence) && > + sii902x->audio.i2s_fifo_sequence[i]; i++) > regmap_write(sii902x->regmap, > SII902X_TPI_I2S_ENABLE_MAPPING_REG, > sii902x->audio.i2s_fifo_sequence[i]); mmmh, i am a big fan of KISS and in this case i would check sii902x->audio.i2s_fifo_sequence[i] outside for(). like: for (i = 0; i < ARRAY_SIZE(sii902x->audio.i2s_fifo_sequence); i++) { if (!sii902x->audio.i2s_fifo_sequence[i]) break; regmap_write(sii902x->regmap, SII902X_TPI_I2S_ENABLE_MAPPING_REG, sii902x->audio.i2s_fifo_sequence[i]); } just my 2 cents, re, wh From mboxrd@z Thu Jan 1 00:00:00 1970 From: walter harms Subject: Re: [PATCH 1/2] drm/bridge: sii902x: re-order conditions to prevent out of bounds read Date: Fri, 07 Jun 2019 09:39:57 +0200 Message-ID: <5CFA14CD.5010502@bfs.de> References: <20190607072704.GA25229@mwanda> Reply-To: wharms@bfs.de Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mx01-fr.bfs.de (mx01-fr.bfs.de [193.174.231.67]) by gabe.freedesktop.org (Postfix) with ESMTPS id 88A6189CC9 for ; Fri, 7 Jun 2019 07:47:32 +0000 (UTC) In-Reply-To: <20190607072704.GA25229@mwanda> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Dan Carpenter Cc: David Airlie , kernel-janitors@vger.kernel.org, Jyri Sarha , dri-devel@lists.freedesktop.org, Laurent Pinchart List-Id: dri-devel@lists.freedesktop.org CgpBbSAwNy4wNi4yMDE5IDA5OjI3LCBzY2hyaWViIERhbiBDYXJwZW50ZXI6Cj4gVGhpcyBzaG91 bGQgY2hlY2sgdGhhdCAiaSIgaXMgd2l0aGluIGJvdW5kcyBiZWZvcmUgY2hlY2tpbmcgcmVhZGlu ZyBmcm9tCj4gdGhlIGFycmF5Lgo+IAo+IEZpeGVzOiBmZjU3ODE2MzRjNDEgKCJkcm0vYnJpZGdl OiBzaWk5MDJ4OiBJbXBsZW1lbnQgSERNSSBhdWRpbyBzdXBwb3J0IikKPiBTaWduZWQtb2ZmLWJ5 OiBEYW4gQ2FycGVudGVyIDxkYW4uY2FycGVudGVyQG9yYWNsZS5jb20+Cj4gLS0tCj4gIGRyaXZl cnMvZ3B1L2RybS9icmlkZ2Uvc2lpOTAyeC5jIHwgNCArKy0tCj4gIDEgZmlsZSBjaGFuZ2VkLCAy IGluc2VydGlvbnMoKyksIDIgZGVsZXRpb25zKC0pCj4gCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMv Z3B1L2RybS9icmlkZ2Uvc2lpOTAyeC5jIGIvZHJpdmVycy9ncHUvZHJtL2JyaWRnZS9zaWk5MDJ4 LmMKPiBpbmRleCBkNmY5OGQzODhhYzIuLjZiMDM2MTZkNmJjMyAxMDA2NDQKPiAtLS0gYS9kcml2 ZXJzL2dwdS9kcm0vYnJpZGdlL3NpaTkwMnguYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9icmlk Z2Uvc2lpOTAyeC5jCj4gQEAgLTU4OSw4ICs1ODksOCBAQCBzdGF0aWMgaW50IHNpaTkwMnhfYXVk aW9faHdfcGFyYW1zKHN0cnVjdCBkZXZpY2UgKmRldiwgdm9pZCAqZGF0YSwKPiAgCWlmIChyZXQp Cj4gIAkJZ290byBvdXQ7Cj4gIAo+IC0JZm9yIChpID0gMDsgc2lpOTAyeC0+YXVkaW8uaTJzX2Zp Zm9fc2VxdWVuY2VbaV0gJiYKPiAtCQkgICAgIGkgPCBBUlJBWV9TSVpFKHNpaTkwMngtPmF1ZGlv Lmkyc19maWZvX3NlcXVlbmNlKTsgaSsrKQo+ICsJZm9yIChpID0gMDsgaSA8IEFSUkFZX1NJWkUo c2lpOTAyeC0+YXVkaW8uaTJzX2ZpZm9fc2VxdWVuY2UpICYmCj4gKwkJICAgIHNpaTkwMngtPmF1 ZGlvLmkyc19maWZvX3NlcXVlbmNlW2ldOyBpKyspCj4gIAkJcmVnbWFwX3dyaXRlKHNpaTkwMngt PnJlZ21hcCwKPiAgCQkJICAgICBTSUk5MDJYX1RQSV9JMlNfRU5BQkxFX01BUFBJTkdfUkVHLAo+ ICAJCQkgICAgIHNpaTkwMngtPmF1ZGlvLmkyc19maWZvX3NlcXVlbmNlW2ldKTsKCgptbW1oLCBp IGFtIGEgYmlnIGZhbiBvZiBLSVNTIGFuZCBpbiB0aGlzIGNhc2UgaSB3b3VsZCBjaGVjayBzaWk5 MDJ4LT5hdWRpby5pMnNfZmlmb19zZXF1ZW5jZVtpXQpvdXRzaWRlIGZvcigpLiBsaWtlOgoKCSBm b3IgKGkgPSAwOyBpIDwgQVJSQVlfU0laRShzaWk5MDJ4LT5hdWRpby5pMnNfZmlmb19zZXF1ZW5j ZSk7IGkrKykgewoJICAgICAgICBpZiAoIXNpaTkwMngtPmF1ZGlvLmkyc19maWZvX3NlcXVlbmNl W2ldKQogICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CgogICAgICAgICAgICAgICAgIHJl Z21hcF93cml0ZShzaWk5MDJ4LT5yZWdtYXAsCiAgCQkJICAgICBTSUk5MDJYX1RQSV9JMlNfRU5B QkxFX01BUFBJTkdfUkVHLAogIAkJCSAgICAgc2lpOTAyeC0+YXVkaW8uaTJzX2ZpZm9fc2VxdWVu Y2VbaV0pOwoJfQoKanVzdCBteSAyIGNlbnRzLAoKcmUsCiB3aApfX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1k ZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcv bWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWw=