Alan Jenkins a849854fc7 atl2: don't request irq on resume if netif running
If the device is suspended with the cable disconnected, then
resumed with the cable connected, dev->open is called before
resume. During resume, we request an IRQ, but the IRQ was
already assigned during dev->open, resulting in the warning
shown below.

Don't request an IRQ if the device is running.

Call Trace:
 [<c011b89a>] warn_on_slowpath+0x40/0x59
 [<c023df15>] raw_pci_read+0x4d/0x55
 [<c023dff3>] pci_read+0x1c/0x21
 [<c01bcd81>] __pci_find_next_cap_ttl+0x44/0x70
 [<c01bce86>] __pci_find_next_cap+0x1a/0x1f
 [<c01bcef9>] pci_find_capability+0x28/0x2c
 [<c01c4144>] pci_msi_check_device+0x53/0x62
 [<c01c49c2>] pci_enable_msi+0x3a/0x1cd
 [<e019f17b>] atl2_write_phy_reg+0x40/0x5f [atl2]
 [<c01061b1>] dma_generic_alloc_coherent+0x0/0xd7
 [<e019f107>] atl2_request_irq+0x15/0x49 [atl2]
 [<e01a1481>] atl2_open+0x20b/0x297 [atl2]
 [<c024a35c>] dev_open+0x62/0x91
 [<c0248b9a>] dev_change_flags+0x93/0x141
 [<c024f308>] do_setlink+0x238/0x2d5
 [<c02501b2>] rtnl_setlink+0xa9/0xbf
 [<c0297f0c>] mutex_lock+0xb/0x19
 [<c024ffa7>] rtnl_dump_ifinfo+0x0/0x69
 [<c0250109>] rtnl_setlink+0x0/0xbf
 [<c024fe42>] rtnetlink_rcv_msg+0x185/0x19f
 [<c0240fd1>] sock_rmalloc+0x23/0x57
 [<c024fcbd>] rtnetlink_rcv_msg+0x0/0x19f
 [<c0259457>] netlink_rcv_skb+0x2d/0x71
 [<c024fcb7>] rtnetlink_rcv+0x14/0x1a
 [<c025929e>] netlink_unicast+0x184/0x1e4
 [<c025992a>] netlink_sendmsg+0x233/0x240
 [<c023f405>] sock_sendmsg+0xb7/0xd0
 [<c0129131>] autoremove_wake_function+0x0/0x2b
 [<c0129131>] autoremove_wake_function+0x0/0x2b
 [<c0147796>] mempool_alloc+0x2d/0x9e
 [<c020c923>] scsi_pool_alloc_command+0x35/0x4f
 [<c0297f0c>] mutex_lock+0xb/0x19
 [<c028e867>] unix_stream_recvmsg+0x357/0x3e2
 [<c01b81c9>] copy_from_user+0x23/0x4f
 [<c02452ea>] verify_iovec+0x3e/0x6c
 [<c023f5ab>] sys_sendmsg+0x18d/0x1f0
 [<c023ffa8>] sys_recvmsg+0x146/0x1c8
 [<c0240016>] sys_recvmsg+0x1b4/0x1c8
 [<c0118f48>] __wake_up+0xf/0x15
 [<c02586cd>] netlink_table_ungrab+0x17/0x19
 [<c01b83ba>] copy_to_user+0x25/0x3b
 [<c023fe4a>] move_addr_to_user+0x50/0x68
 [<c0240266>] sys_getsockname+0x6f/0x9a
 [<c0240280>] sys_getsockname+0x89/0x9a
 [<c015046a>] do_wp_page+0x3ae/0x41a
 [<c0151525>] handle_mm_fault+0x4c5/0x540
 [<c02405d0>] sys_socketcall+0x176/0x1b0
 [<c010376d>] sysenter_do_call+0x12/0x21

Signed-off-by: Alan Jenkins <alan-jenkins@tuffmail.co.uk>
Signed-off-by: Jay Cliburn <jcliburn@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2008-11-20 04:18:25 -08:00
..
2008-11-16 01:35:56 -08:00
2008-11-16 19:05:16 -08:00
2008-11-03 15:23:02 -05:00
2008-10-16 16:52:05 +02:00
2008-11-16 01:42:36 -08:00
2008-10-08 16:53:40 -07:00
2008-11-19 14:17:02 -08:00
2008-11-18 17:26:26 -05:00
2008-10-16 16:52:05 +02:00
2006-09-13 13:24:59 -04:00
2008-01-28 15:04:05 -08:00
2006-09-13 13:24:59 -04:00
2006-09-13 13:24:59 -04:00
2008-06-10 18:20:17 -04:00
2006-09-13 13:24:59 -04:00
2008-08-14 04:26:38 -04:00
2007-10-10 16:51:43 -07:00
2008-10-12 21:15:17 -07:00
2006-09-13 13:24:59 -04:00
2008-07-18 17:54:17 -07:00
2008-10-09 12:22:38 -07:00
2008-10-09 12:26:41 -07:00
2008-08-13 16:05:38 -07:00
2008-08-13 16:05:37 -07:00
2008-08-13 16:05:37 -07:00
2008-11-03 16:46:58 -08:00
2008-08-13 16:05:37 -07:00
2008-09-03 14:38:00 -07:00
2008-09-22 19:27:10 -07:00
2008-09-22 19:27:10 -07:00
2006-09-13 13:24:59 -04:00
2008-03-26 00:18:43 -04:00
2007-02-09 16:23:17 +00:00
2006-09-13 13:24:59 -04:00
2008-02-01 20:54:03 +11:00
2007-10-10 16:51:13 -07:00
2007-10-10 16:51:13 -07:00
2008-01-28 15:07:59 -08:00
2006-09-13 13:24:59 -04:00
2008-10-08 17:09:54 -07:00
2008-11-14 18:18:30 -05:00
2008-05-22 14:12:40 -04:00
2008-01-28 15:07:12 -08:00
2006-09-13 13:24:59 -04:00
2008-09-16 19:35:05 -07:00
2008-07-22 17:50:44 -04:00
2008-08-27 05:36:57 -04:00
2008-07-25 15:44:44 +10:00
2008-03-17 08:11:41 -04:00
2008-08-14 04:26:38 -04:00
2008-10-08 19:51:33 -07:00
2008-11-03 15:23:12 -05:00
2008-04-25 02:08:51 -04:00
2008-01-28 15:07:12 -08:00
2007-10-19 11:53:42 -07:00
2007-04-28 11:01:05 -04:00
2008-10-08 17:09:54 -07:00
2008-07-22 17:50:44 -04:00
2008-03-17 07:56:33 -04:00
2008-03-26 00:18:00 -04:00
2006-09-13 13:24:59 -04:00
2008-11-14 14:44:08 -08:00
2008-05-30 22:19:22 -04:00
2008-03-05 16:34:41 -06:00
2008-07-20 17:12:34 -07:00
2008-01-28 15:11:27 -08:00
2008-07-20 17:12:34 -07:00
2008-10-30 23:35:02 -07:00
2008-10-17 02:38:35 +11:00
2008-01-28 15:03:59 -08:00
2008-04-16 20:41:44 -04:00
2008-05-30 22:07:17 -04:00
2008-08-07 02:20:57 -04:00
2006-09-13 13:24:59 -04:00
2007-10-16 21:10:29 -04:00
2008-10-12 20:59:48 -07:00
2008-08-07 01:55:50 -04:00
2008-01-28 15:11:27 -08:00
2008-07-20 17:12:34 -07:00
2006-09-13 13:24:59 -04:00
2008-10-22 06:22:13 -04:00
2008-01-28 15:03:59 -08:00
2007-05-04 17:59:08 -07:00
2007-07-16 15:02:47 +02:00
2008-04-16 20:06:50 -04:00
2008-08-29 02:13:33 -07:00
2008-03-23 03:35:12 -07:00
2008-01-28 15:07:10 -08:00
2008-08-29 02:14:29 -07:00
2008-08-31 20:59:37 -07:00
2008-08-29 02:14:43 -07:00
2008-10-12 21:01:53 -07:00
2007-10-10 16:51:34 -07:00
2008-05-30 22:18:02 -04:00
2008-11-01 09:49:46 -07:00