graphic: 0.804 vnc: 0.758 device: 0.691 semantic: 0.676 performance: 0.644 PID: 0.574 other: 0.565 debug: 0.490 network: 0.466 permissions: 0.322 socket: 0.312 files: 0.304 boot: 0.159 KVM: 0.136 nvram/fw_cfg.c ‘read’ may be used uninitialized Commit Number: b6af8ea60282df514f87d32e36afd1c9aeee28c8 The gcc version version 6.3.1 catches a new uninitialized variable in the master branch of QEMU on the Github. After looking through the function, it is really not properly assigned to a value in a certain path (the else condition of assigning read value in the code). Here is the snippet of the condition assigning value: if (dma.control & FW_CFG_DMA_CTL_READ) { read = 1; } else if (dma.control & FW_CFG_DMA_CTL_SKIP) { read = 0; } else { dma.length = 0; } Error (Warning) message is as following: hw/nvram/fw_cfg.c: In function ‘fw_cfg_dma_transfer’: hw/nvram/fw_cfg.c:372:16: error: ‘read’ may be used uninitialized in this function [-Werror=maybe-uninitialized] Solution: You can fix this by either assign a proper initial value when defining it, or give a proper value in the else condition. Sorry that I don't have a patch for this. I'm not sure whether to assign 1 or 0 in the else condition. This has been fixed here already: https://git.qemu.org/?p=qemu.git;a=commitdiff;h=baf2d5bfbac#patch6