When enabling multiple VIFS, the driver sometimes crashes. The frequency of the crash increases as more VIFS are enabled. Signed-off-by: Nathan Hintz <nlhintz@hotmail.com> SVN-Revision: 38762
		
			
				
	
	
		
			28 lines
		
	
	
		
			804 B
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			28 lines
		
	
	
		
			804 B
		
	
	
	
		
			Diff
		
	
	
	
	
	
--- a/driver/wl_linux.c
 | 
						|
+++ b/driver/wl_linux.c
 | 
						|
@@ -463,6 +463,16 @@ wl_schedule_fn(wl_info_t *wl, void (*fn)
 | 
						|
 }
 | 
						|
 #endif /* DSLCPE_DELAY */
 | 
						|
 
 | 
						|
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3, 2, 0)
 | 
						|
+#define WL_DEFAULT_OPS \
 | 
						|
+	.ndo_open = wl_open, \
 | 
						|
+	.ndo_stop = wl_close, \
 | 
						|
+	.ndo_start_xmit = wl_start, \
 | 
						|
+	.ndo_get_stats = wl_get_stats, \
 | 
						|
+	.ndo_set_mac_address = wl_set_mac_address, \
 | 
						|
+	.ndo_set_rx_mode = wl_set_multicast_list, \
 | 
						|
+	.ndo_do_ioctl = wl_ioctl
 | 
						|
+#else
 | 
						|
 #define WL_DEFAULT_OPS \
 | 
						|
 	.ndo_open = wl_open, \
 | 
						|
 	.ndo_stop = wl_close, \
 | 
						|
@@ -471,6 +481,7 @@ wl_schedule_fn(wl_info_t *wl, void (*fn)
 | 
						|
 	.ndo_set_mac_address = wl_set_mac_address, \
 | 
						|
 	.ndo_set_multicast_list = wl_set_multicast_list, \
 | 
						|
 	.ndo_do_ioctl = wl_ioctl
 | 
						|
+#endif
 | 
						|
 
 | 
						|
 static const struct net_device_ops wl_ops = {
 | 
						|
 	WL_DEFAULT_OPS,
 |