|
Message-ID: <20180410220634.GZ16141@n2100.armlinux.org.uk> Date: Tue, 10 Apr 2018 23:06:34 +0100 From: Russell King - ARM Linux <linux@...linux.org.uk> To: Laura Abbott <labbott@...hat.com> Cc: David Airlie <airlied@...ux.ie>, dri-devel@...ts.freedesktop.org, linux-kernel@...r.kernel.org, kernel-hardening@...ts.openwall.com, Kees Cook <keescook@...omium.org> Subject: Re: [PATCH] drm/i2c: tda998x: Remove VLA usage On Tue, Apr 10, 2018 at 02:52:35PM -0700, Laura Abbott wrote: > On 04/09/2018 03:21 PM, Russell King - ARM Linux wrote: > >On Mon, Apr 09, 2018 at 02:07:03PM -0700, Laura Abbott wrote: > >>There's an ongoing effort to remove VLAs[1] from the kernel to eventually > >>turn on -Wvla. The vla in reg_write_range is based on the length of data > >>passed. The one use of a non-constant size for this range is bounded by > >>the size buffer passed to hdmi_infoframe_pack which is a fixed size. > >>Switch to this upper bound. > > > >Does this _really_ make it safer? What if the code is modified to write > >more than 32 bytes in the future? > > > >Sorry, I don't think this is safer at all. > > > > Yeah I wasn't 100% sure about this one. Elsewhere, we've added bounds > checks against the new static size buffer so we could do that here > to ensure we don't overrun the stack if we do need to write more > than 32 bytes in the future. Another option is to switch to > a kmalloc buffer. Are either of those options acceptable to you or > do you have a better idea of how to get rid of the VLA? Limiting the size would be better (with an error message/WARN_ON) - at least that results in a diagnostic message to alert the developer rather than silently stomping over the stack. -- RMK's Patch system: http://www.armlinux.org.uk/developer/patches/ FTTC broadband for 0.8mile line in suburbia: sync at 8.8Mbps down 630kbps up According to speedtest.net: 8.21Mbps down 510kbps up
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.