qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [Bug 1656676] [NEW] nvram/fw_cfg.c ‘read’ may be used unini


From: Medicine Yeh
Subject: [Qemu-devel] [Bug 1656676] [NEW] nvram/fw_cfg.c ‘read’ may be used uninitialized
Date: Sun, 15 Jan 2017 17:33:36 -0000

Public bug reported:

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.

** Affects: qemu
     Importance: Undecided
         Status: New

-- 
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1656676

Title:
  nvram/fw_cfg.c ‘read’ may be used uninitialized

Status in QEMU:
  New

Bug description:
  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.

To manage notifications about this bug go to:
https://bugs.launchpad.net/qemu/+bug/1656676/+subscriptions



reply via email to

[Prev in Thread] Current Thread [Next in Thread]