On 9 August 2011 10:26, Avi Kivity <a...@redhat.com> wrote:
> On 08/09/2011 12:23 PM, Peter Maydell wrote:
>>
>> On 9 August 2011 10:02, Avi Kivity<a...@redhat.com>  wrote:
>> >  +static const MemoryRegionOps omap_gpmc_ops = {
>> >  +    .read = omap_gpmc_read,
>> >  +    .write = omap_gpmc_write,
>> >  +    .endianness = DEVICE_NATIVE_ENDIAN,
>> >  +    .valid = {
>> >  +        .min_access_size = 4,
>> >  +        .max_access_size = 4,
>> >  +    },
>> >    };
>>
>> Does this give debug trace output for missized accesses?
>
> Only after we implement and configure a debug policy in memory.c
>
>> That's the main point of the badread/badwrite functions...
>
> These are broken now, aren't they?

They successfully print a message, which as I say is the
main point. The OMAP TRM typically says the behaviour isn't
defined for wrong-size accesses, so guest code doing it is
broken anyhow and so the error in the current implementation
is IMHO not so serious.

I think if (as here) it turns out that we need more functionality
in memory.c then we should be implementing it, not silently
dropping things in the conversion process.

-- PMM

Reply via email to