[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-arm] [Qemu-devel] [PATCH 7/8] hw/display/bcm2835_fb: Validate
From: |
Richard Henderson |
Subject: |
Re: [Qemu-arm] [Qemu-devel] [PATCH 7/8] hw/display/bcm2835_fb: Validate config settings |
Date: |
Thu, 23 Aug 2018 21:53:46 -0700 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.9.1 |
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 <address@hidden>
> ---
> 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 <address@hidden>
r~
- Re: [Qemu-arm] [Qemu-devel] [PATCH 3/8] hw/display/bcm2835_fb: Drop unused size and pitch fields, (continued)
- [Qemu-arm] [PATCH 2/8] hw/misc/bcm2835_property: Track fb settings using BCM2835FBConfig, Peter Maydell, 2018/08/14
- [Qemu-arm] [PATCH 4/8] hw/display/bcm2835_fb: Reset resolution, etc correctly, Peter Maydell, 2018/08/14
- [Qemu-arm] [PATCH 5/8] hw/display/bcm2835_fb: Abstract out calculation of pitch, size, Peter Maydell, 2018/08/14
- [Qemu-arm] [PATCH 1/8] hw/misc/bcm2835_fb: Move config fields to their own struct, Peter Maydell, 2018/08/14
- [Qemu-arm] [PATCH 7/8] hw/display/bcm2835_fb: Validate config settings, Peter Maydell, 2018/08/14
- Re: [Qemu-arm] [Qemu-devel] [PATCH 7/8] hw/display/bcm2835_fb: Validate config settings,
Richard Henderson <=
- [Qemu-arm] [PATCH 6/8] hw/display/bcm2835_fb: Fix handling of virtual framebuffer, Peter Maydell, 2018/08/14
- [Qemu-arm] [PATCH 8/8] hw/display/bcm2835_fb: Validate bcm2835_fb_mbox_push() config, Peter Maydell, 2018/08/14
- Re: [Qemu-arm] [PATCH 0/8] arm/raspi: Make fb handle virtual viewport, Peter Maydell, 2018/08/23