lkml.org 
[lkml]   [2018]   [Dec]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH] net: netxen: fix a missing check and an uninitialized use
    Date
    When netxen_rom_fast_read() fails, "bios" is left uninitialized and may
    contain random value, thus should not be used.

    The fix ensures that if netxen_rom_fast_read() fails, we return "-EIO".

    Signed-off-by: Kangjie Lu <kjlu@umn.edu>
    ---
    drivers/net/ethernet/qlogic/netxen/netxen_nic_init.c | 3 ++-
    1 file changed, 2 insertions(+), 1 deletion(-)

    diff --git a/drivers/net/ethernet/qlogic/netxen/netxen_nic_init.c b/drivers/net/ethernet/qlogic/netxen/netxen_nic_init.c
    index 0ea141ece19e..6547a9dd5935 100644
    --- a/drivers/net/ethernet/qlogic/netxen/netxen_nic_init.c
    +++ b/drivers/net/ethernet/qlogic/netxen/netxen_nic_init.c
    @@ -1125,7 +1125,8 @@ netxen_validate_firmware(struct netxen_adapter *adapter)
    return -EINVAL;
    }
    val = nx_get_bios_version(adapter);
    - netxen_rom_fast_read(adapter, NX_BIOS_VERSION_OFFSET, (int *)&bios);
    + if (netxen_rom_fast_read(adapter, NX_BIOS_VERSION_OFFSET, (int *)&bios))
    + return -EIO;
    if ((__force u32)val != bios) {
    dev_err(&pdev->dev, "%s: firmware bios is incompatible\n",
    fw_name[fw_type]);
    --
    2.17.2 (Apple Git-113)
    \
     
     \ /
      Last update: 2018-12-21 07:23    [W:3.663 / U:0.004 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site