On Thu, 23 Jan 2020 13:39:07 +0100 Andrew Jones <drjo...@redhat.com> wrote:
> On Thu, Jan 23, 2020 at 12:37:38PM +0100, Igor Mammedov wrote: > > If user provided non-sense RAM size, board will complain and > > continue running with max RAM size supported. > > Also RAM is going to be allocated by generic code, so it won't be > > possible for board to fix things up for user. > > > > Make it error message and exit to force user fix CLI, > > instead of accepting non-sense CLI values. > > > > Signed-off-by: Igor Mammedov <imamm...@redhat.com> > > --- > > CC: drjo...@redhat.com > > CC: j...@tribudubois.net > > CC: peter.mayd...@linaro.org > > CC: qemu-...@nongnu.org > > --- > > hw/arm/imx25_pdk.c | 4 ++-- > > 1 file changed, 2 insertions(+), 2 deletions(-) > > > > diff --git a/hw/arm/imx25_pdk.c b/hw/arm/imx25_pdk.c > > index c76fc2b..a2b7b35 100644 > > --- a/hw/arm/imx25_pdk.c > > +++ b/hw/arm/imx25_pdk.c > > @@ -78,10 +78,10 @@ static void imx25_pdk_init(MachineState *machine) > > > > /* We need to initialize our memory */ > > if (machine->ram_size > (FSL_IMX25_SDRAM0_SIZE + > > FSL_IMX25_SDRAM1_SIZE)) { > > - warn_report("RAM size " RAM_ADDR_FMT " above max supported, " > > + error_report("RAM size " RAM_ADDR_FMT " above max supported, " > > "reduced to %x", machine->ram_size, > > FSL_IMX25_SDRAM0_SIZE + FSL_IMX25_SDRAM1_SIZE); > > - machine->ram_size = FSL_IMX25_SDRAM0_SIZE + FSL_IMX25_SDRAM1_SIZE; > > + exit(EXIT_FAILURE); > > } > > > > memory_region_allocate_system_memory(&s->ram, NULL, "imx25.ram", > > -- > > 2.7.4 > > > > This would break existing command lines that are happily using the max ram > size, which is only 512 MB. Yes, those command lines are wrong, but I'm > not sure we want to flip the warn to an error without machine type > versioning - which this board doesn't have. We typically don't do machine type versioning for CLI changes and in this case it would be plain user error in providing invalid CLI, so it should be fixed on user's side and not worked around by QEMU. It was fine before when board was allocating RAM on its own, but with RAM initialization moved to generic code it won't be possible. Hence fixup dropped and warning is converted to error to let user know that their CLI should be fixed. Board description [1] says that it supports up to 512Mb of RAM max. 1) https://www.nxp.com/design/development-boards/i.mx-evaluation-and-development-boards/i.mx25-product-development-kit:IMX25PDK > Thanks, > drew