On 08/14/2018 07:44 AM, Peter Maydell wrote: > Validate the config settings that the guest tries to set. > > The wiki page documentation is not really accurate here: > generally rather than failing requests to set bad parameters, > the hardware will just clip them to something sensible. > > Validate the most important parameters: sizes and > the viewport offsets. This prevents the framebuffer > code from trying to read out-of-range memory. > > In the property handling code, we validate the new parameters every > time we encounter a tag that sets them. This means we validate the > config multiple times if the request includes multiple config-setting > tags, but the code would require significant restructuring to do a > validation only once but still return the clipped settings for > get-parameter tags and the buffer allocation tag. > > Validation of settings made via the older bcm2835_fb_mbox_push() > function will be done in the next commit. > > Signed-off-by: Peter Maydell <peter.mayd...@linaro.org> > --- > include/hw/display/bcm2835_fb.h | 8 +++++ > hw/display/bcm2835_fb.c | 48 +++++++++++++++++++++++++++-- > hw/misc/bcm2835_property.c | 54 ++++++++++++++++----------------- > 3 files changed, 81 insertions(+), 29 deletions(-)
Reviewed-by: Richard Henderson <richard.hender...@linaro.org> r~