be2net: Fix to avoid firmware update when interface is not open.

Since interrupts are enabled only when open is called on the interface,
Attempting a firmware update operation when interface is down could lead to
partial success or failure of operation. This fix fails the request if
netif_running is false.

Signed-off-by: Sarveshwar Bandi <Sarveshwar.Bandi@emulex.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Sarveshwar Bandi 2010-11-18 23:44:45 +00:00 committed by David S. Miller
parent dba4490d22
commit d9efd2af46
1 changed files with 6 additions and 0 deletions

View File

@ -2458,6 +2458,12 @@ int be_load_fw(struct be_adapter *adapter, u8 *func)
int status, i = 0, num_imgs = 0; int status, i = 0, num_imgs = 0;
const u8 *p; const u8 *p;
if (!netif_running(adapter->netdev)) {
dev_err(&adapter->pdev->dev,
"Firmware load not allowed (interface is down)\n");
return -EPERM;
}
strcpy(fw_file, func); strcpy(fw_file, func);
status = request_firmware(&fw, fw_file, &adapter->pdev->dev); status = request_firmware(&fw, fw_file, &adapter->pdev->dev);