diff options
author | Robert Jennings <rcj@linux.vnet.ibm.com> | 2010-07-16 04:57:25 +0000 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2010-07-16 13:03:23 -0700 |
commit | ee2e6114de3bdb1c34f3910b690f990483e981ab (patch) | |
tree | a6b4de8355b31824103e24dc81bc0515c08d99b0 /net/ipv6 | |
parent | 0f6142fa96a4ce799ccaa4cdb38fc4a715eb9d35 (diff) |
ibmveth: lost IRQ while closing/opening device leads to service loss
The order of freeing the IRQ and freeing the device in firmware
in ibmveth_close can cause the adapter to become unusable after a
subsequent ibmveth_open. Only a reboot of the OS will make the
network device usable again. This is seen when cycling the adapter
up and down while there is network activity.
There is a window where an IRQ will be left unserviced (H_EOI will not
be called). The solution is to make a VIO_IRQ_DISABLE h_call, free the
device with firmware, and then call free_irq.
Signed-off-by: Robert Jennings <rcj@linux.vnet.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv6')
0 files changed, 0 insertions, 0 deletions