USB: yurex: fix race between probe() and read()
There's a window during which read() would return 0 instead of a correct error for no data yet. Reorder initialization to fix the race. Signed-off-by: Oliver Neukum <oneukum@suse.de> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
		
					parent
					
						
							
								552e1f2679
							
						
					
				
			
			
				commit
				
					
						c78d1ecfd7
					
				
			
		
					 1 changed files with 1 additions and 2 deletions
				
			
		| 
						 | 
				
			
			@ -296,6 +296,7 @@ static int yurex_probe(struct usb_interface *interface, const struct usb_device_
 | 
			
		|||
 | 
			
		||||
	/* save our data pointer in this interface device */
 | 
			
		||||
	usb_set_intfdata(interface, dev);
 | 
			
		||||
	dev->bbu = -1;
 | 
			
		||||
 | 
			
		||||
	/* we can register the device now, as it is ready */
 | 
			
		||||
	retval = usb_register_dev(interface, &yurex_class);
 | 
			
		||||
| 
						 | 
				
			
			@ -306,8 +307,6 @@ static int yurex_probe(struct usb_interface *interface, const struct usb_device_
 | 
			
		|||
		goto error;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	dev->bbu = -1;
 | 
			
		||||
 | 
			
		||||
	dev_info(&interface->dev,
 | 
			
		||||
		 "USB YUREX device now attached to Yurex #%d\n",
 | 
			
		||||
		 interface->minor);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue