[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v4 4/6] loader: add rom transaction API
From: |
Stefan Hajnoczi |
Subject: |
Re: [Qemu-devel] [PATCH v4 4/6] loader: add rom transaction API |
Date: |
Mon, 13 Aug 2018 10:58:36 +0100 |
On Wed, Aug 8, 2018 at 10:32 PM Alistair Francis <address@hidden> wrote:
> On Fri, Aug 3, 2018 at 7:47 AM, Stefan Hajnoczi <address@hidden> wrote:
> > @@ -1168,6 +1172,34 @@ void rom_reset_order_override(void)
> > fw_cfg_reset_order_override(fw_cfg);
> > }
> >
> > +void rom_transaction_begin(void)
> > +{
> > + Rom *rom;
> > +
> > + /* Ignore ROMs added without the transaction API */
> > + QTAILQ_FOREACH(rom, &roms, next) {
> > + rom->committed = true;
>
> My only thought is that maybe this should produce a warning or error
> if a ROM isn't committed.
Not all loaders use the transaction API. Therefore it is likely that
some pre-existing ROMs will have ->committed = false.
For example, imagine a firmware ROM is loaded by the machine type and
then -kernel is used to load a file. The -kernel loader shouldn't
worry about the firmware ROM, which was added without the transaction
API.
If we want to be strict I'd have to audit all ROM API users and wrap
them in add rom_transaction_begin/end() even if they cannot fail.
This is why I decided to simply ignore pre-existing ROMs.
Stefan
- [Qemu-devel] [PATCH v4 0/6] arm: add Cortex M0 CPU model and hex file loader, Stefan Hajnoczi, 2018/08/03
- [Qemu-devel] [PATCH v4 2/6] target/arm: add "cortex-m0" CPU model, Stefan Hajnoczi, 2018/08/03
- [Qemu-devel] [PATCH v4 3/6] loader: extract rom_free() function, Stefan Hajnoczi, 2018/08/03
- [Qemu-devel] [PATCH v4 1/6] hw/arm: make bitbanded IO optional on ARMv7-M, Stefan Hajnoczi, 2018/08/03
- [Qemu-devel] [PATCH v4 4/6] loader: add rom transaction API, Stefan Hajnoczi, 2018/08/03
- [Qemu-devel] [PATCH v4 5/6] loader: Implement .hex file loader, Stefan Hajnoczi, 2018/08/03
- Re: [Qemu-devel] [Qemu-arm] [PATCH v4 5/6] loader: Implement .hex file loader, Philippe Mathieu-Daudé, 2018/08/10
- Re: [Qemu-devel] [Qemu-arm] [PATCH v4 5/6] loader: Implement .hex file loader, sail darcy, 2018/08/10
- Re: [Qemu-devel] [Qemu-arm] [PATCH v4 5/6] loader: Implement .hex file loader, Stefan Hajnoczi, 2018/08/13
- Re: [Qemu-devel] [Qemu-arm] [PATCH v4 5/6] loader: Implement .hex file loader, Philippe Mathieu-Daudé, 2018/08/15
- Re: [Qemu-devel] [Qemu-arm] [PATCH v4 5/6] loader: Implement .hex file loader, Stefan Hajnoczi, 2018/08/15
- Re: [Qemu-devel] [Qemu-arm] [PATCH v4 5/6] loader: Implement .hex file loader, Philippe Mathieu-Daudé, 2018/08/16
[Qemu-devel] [PATCH v4 6/6] Add QTest testcase for the Intel Hexadecimal, Stefan Hajnoczi, 2018/08/03