Skip to content

Commit

Permalink
[PATCH] PCI: cpqphp_ctrl.c: board_replaced(): remove dead code
Browse files Browse the repository at this point in the history
The Coverity checker correctly noted, that in function board_replaced in
drivers/pci/hotplug/cpqphp_ctrl.c, the variable src always has the
value 8, and therefore much code after the

...
                        if (rc || src) {
...
                                if (rc)
                                        return rc;
                                else
                                        return 1;
                        }
...

can never be called.

This patch removes the unreachable code in this function fixing kernel
Bugzilla #6073.

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
  • Loading branch information
Adrian Bunk authored and Greg Kroah-Hartman committed Mar 23, 2006
1 parent 0cccd0c commit 1305e91
Showing 1 changed file with 14 additions and 62 deletions.
76 changes: 14 additions & 62 deletions drivers/pci/hotplug/cpqphp_ctrl.c
Original file line number Diff line number Diff line change
Expand Up @@ -1282,9 +1282,7 @@ static u32 board_replaced(struct pci_func *func, struct controller *ctrl)
u8 hp_slot;
u8 temp_byte;
u8 adapter_speed;
u32 index;
u32 rc = 0;
u32 src = 8;

hp_slot = func->device - ctrl->slot_device_offset;

Expand Down Expand Up @@ -1368,76 +1366,30 @@ static u32 board_replaced(struct pci_func *func, struct controller *ctrl)

rc = cpqhp_configure_board(ctrl, func);

if (rc || src) {
/* If configuration fails, turn it off
* Get slot won't work for devices behind
* bridges, but in this case it will always be
* called for the "base" bus/dev/func of an
* adapter. */

mutex_lock(&ctrl->crit_sect);

amber_LED_on (ctrl, hp_slot);
green_LED_off (ctrl, hp_slot);
slot_disable (ctrl, hp_slot);

set_SOGO(ctrl);

/* Wait for SOBS to be unset */
wait_for_ctrl_irq (ctrl);

mutex_unlock(&ctrl->crit_sect);

if (rc)
return rc;
else
return 1;
}

func->status = 0;
func->switch_save = 0x10;

index = 1;
while (((func = cpqhp_slot_find(func->bus, func->device, index)) != NULL) && !rc) {
rc |= cpqhp_configure_board(ctrl, func);
index++;
}

if (rc) {
/* If configuration fails, turn it off
* Get slot won't work for devices behind
* bridges, but in this case it will always be
* called for the "base" bus/dev/func of an
* adapter. */

mutex_lock(&ctrl->crit_sect);

amber_LED_on (ctrl, hp_slot);
green_LED_off (ctrl, hp_slot);
slot_disable (ctrl, hp_slot);

set_SOGO(ctrl);

/* Wait for SOBS to be unset */
wait_for_ctrl_irq (ctrl);

mutex_unlock(&ctrl->crit_sect);

return rc;
}
/* Done configuring so turn LED on full time */
/* If configuration fails, turn it off
* Get slot won't work for devices behind
* bridges, but in this case it will always be
* called for the "base" bus/dev/func of an
* adapter. */

mutex_lock(&ctrl->crit_sect);

green_LED_on (ctrl, hp_slot);
amber_LED_on (ctrl, hp_slot);
green_LED_off (ctrl, hp_slot);
slot_disable (ctrl, hp_slot);

set_SOGO(ctrl);

/* Wait for SOBS to be unset */
wait_for_ctrl_irq (ctrl);

mutex_unlock(&ctrl->crit_sect);
rc = 0;

if (rc)
return rc;
else
return 1;

} else {
/* Something is wrong
Expand Down

0 comments on commit 1305e91

Please sign in to comment.