On Wed, Sep 19, 2012 at 06:41:14PM +0200, Stefan Weil wrote: > hw/pflash_cfi01.c:209: > check_return: Calling function "bdrv_write" without checking return value (as > is done elsewhere 35 out of 37 times). > > hw/pflash_cfi02.c:144: > unterminated_default: The default case is not terminated by a 'break' > statement. > > hw/pflash_cfi02.c:238: > check_return: Calling function "bdrv_write" without checking return value (as > is done elsewhere 35 out of 37 times). > > Signed-off-by: Stefan Weil <s...@weilnetz.de> > --- > hw/pflash_cfi01.c | 6 ++++-- > hw/pflash_cfi02.c | 7 +++++-- > 2 files changed, 9 insertions(+), 4 deletions(-) > > diff --git a/hw/pflash_cfi01.c b/hw/pflash_cfi01.c > index 56ed33f..27ae4aa 100644 > --- a/hw/pflash_cfi01.c > +++ b/hw/pflash_cfi01.c > @@ -205,8 +205,10 @@ static void pflash_update(pflash_t *pfl, int offset, > /* round to sectors */ > offset = offset >> 9; > offset_end = (offset_end + 511) >> 9; > - bdrv_write(pfl->bs, offset, pfl->storage + (offset << 9), > - offset_end - offset); > + if (bdrv_write(pfl->bs, offset, pfl->storage + (offset << 9), > + offset_end - offset) == -1) {
bdrv_write() returns -errno, not -1. > + fprintf(stderr, "pflash: Error writing to flash storage\n"); > + } Please report the errno and possibly bdrv_get_device_name() to uniquely identify this block device. Peter's comments about reporting errors to the guest make sense to me. I'm not sure how much work that involves, printing the error is a step in the right direction but we shouldn't forget the TODO. Stefan