On 15/03/2017 08:56, Markus Armbruster wrote: > Paolo Bonzini <pbonz...@redhat.com> writes: > >> When more complexity was added to facilitate inlining, Coverity >> lost the ability to use the address_space_rw model for >> address_space_read/write. > > Got the commit hash of the change? > >> This causes false positive defects when Coverity sees >> a length-8 write in address_space_read and a length-4 >> (e.g. int*) buffer to read into. As long as the size of >> the buffer is okay, this is a false positive. >> >> Signed-off-by: Paolo Bonzini <pbonz...@redhat.com> >> --- >> scripts/coverity-model.c | 19 +++++++++++++++++++ >> 1 file changed, 19 insertions(+) >> >> diff --git a/scripts/coverity-model.c b/scripts/coverity-model.c >> index ee5bf9d..2e30150 100644 >> --- a/scripts/coverity-model.c >> +++ b/scripts/coverity-model.c >> @@ -79,6 +79,25 @@ MemTxResult address_space_rw(AddressSpace *as, hwaddr >> addr, MemTxAttrs attrs, >> return result; >> } >> >> +MemTxResult address_space_read(AddressSpace *as, hwaddr addr, >> + MemTxAttrs attrs, >> + uint8_t *buf, int len) >> +{ >> + MemTxResult result; >> + __bufwrite(buf, len); >> + return result; >> +} >> + >> +MemTxResult address_space_write(AddressSpace *as, hwaddr addr, >> + MemTxAttrs attrs, >> + const uint8_t *buf, int len) >> +{ >> + MemTxResult result; >> + __bufread(buf, len); >> + return result; >> +} >> + >> + >> /* Tainting */ >> >> typedef struct {} name2keysym_t; > > Preferably with the commit hash of the change that necessitates this > update mentioned in the commit message: > Reviewed-by: Markus Armbruster <arm...@redhat.com> > > I can stick this in a miscellaneous pull request due later today.
Commit eb7eeb8 ("memory: split address_space_read and address_space_write", 2015-12-17). On the other hand, the model for address_space_rw is not needed anymore, so I'll send v2. Paolo