• Matt Carlson's avatar
    tg3: Fix 'scheduling while atomic' errors · 2f751b67
    Matt Carlson authored
    This patch fixes the 'scheduling while atomic' errors introduced by
    commit 12dac075 ("tg3: adapt tg3 to
    use reworked PCI PM code").
    
    The first hunk of the patch removes an unnecessary
    tg3_set_power_state() call.  The chip will already be in the D0 state
    either due to a chip reset or through a previous call to
    tg3_set_power_state().
    
    The second hunk of the patch moves the tg3_set_power_state() call
    outside the critical section guarded by tg3_full_lock() and
    tg3_full_unlock() functions.  The power state of the device is and
    should be outside the lock's domain and all other
    tg3_set_power_state() calls support this.
    Signed-off-by: default avatarMatt Carlson <mcarlson@broadcom.com>
    Signed-off-by: default avatarMichael Chan <mchan@broadcom.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    2f751b67
tg3.c 390 KB