On 25 October 2012 14:21, Avi Kivity <[email protected]> wrote: > On 10/25/2012 03:12 PM, Peter Maydell wrote: >> (2) what should the memory system do for accesses where there is >> no memory region? This is really system specific as it depends >> what the bus fabric does. For ARM the usual thing would be to >> generate a decode error response which will result in the guest >> CPU taking a data abort or prefetch abort. I don't think our >> memory system currently has any way of saying "for this access >> generate an exception"... >> > > You could easily have the top-level container have ->ops that generate > an exception.
Ah, yes, there's an 'accepts' callback. (That's kind of awkward as an API because it means your decode logic gets spread between read, write and accept: there are some devices where it would be nice to have the 'default:' case of the address switch say "unknown offset, raise decode error". If the read callback took a uint64_t* rather than returning the read data, we could make both read and write return a success/decode-error type of status result.) -- PMM
