qemu/hw/scsi/scsi-disk.c:2741: possible missing break ? qemu/hw/scsi/scsi-disk.c:2741] -> [qemu/hw/scsi/scsi-disk.c:2745]: (warning) Variable 'cdb1' is reassigned a value before the old one has been used. 'break;' missing? qemu/hw/scsi/scsi-disk.c:2742] -> [qemu/hw/scsi/scsi-disk.c:2746]: (warning) Variable 'group_number' is reassigned a value before the old one has been used. 'break;' missing? Source code is case 1: /* 10-byte CDB. */ r->cdb1 = req->cmd.buf[1]; r->group_number = req->cmd.buf[6]; case 4: /* 12-byte CDB. */ Also, [qemu/hw/scsi/scsi-disk.c:2063]: (warning) %lu in format string (no. 1) requires 'unsigned long' but the argument type is 'signed long'. [qemu/hw/scsi/scsi-disk.c:2066]: (warning) %lu in format string (no. 1) requires 'unsigned long' but the argument type is 'signed long'. [qemu/hw/scsi/scsi-disk.c:2069]: (warning) %lu in format string (no. 1) requires 'unsigned long' but the argument type is 'signed long'. [qemu/hw/scsi/scsi-disk.c:2083]: (warning) %lu in format string (no. 2) requires 'unsigned long' but the argument type is 'signed long'. The issue with the missing break has been fixed here: http://git.qemu.org/?p=qemu.git;a=commitdiff;h=ed45cae39117d41315541 I am currently not able to reproduce the problem with the format strings ... how did you get them? Which compiler (and version) did you use? >I am currently not able to reproduce the problem with the format strings ... >how did you get them? Which compiler (and version) did you use? I used a static analyser for C & C++ called cppcheck. It is available from sourceforge. I find it very useful. I think gcc might be able to reproduce these problems with one of the higher warning levels. -Wformat=2 springs to mind, but a check of the gcc documentation around -Wformat will give more accurate guidance. The issue with the format strings should now be fixed, too: http://git.qemu.org/?p=qemu.git;a=commitdiff;h=142c21455bb2416b37f71b