Fix kernel NULL pointer dereference in xen-blkfront
When booting Xen Dom0 on a pre-release 3.2.1 hypervisor the system Oopses on a "Unable to handle kernel NULL pointer dereference" in xenwatch. From the backtrace it looks like backend_changed is calling bdget_disk with a NULL pointer. Checking for NULL and returning ENODEV instead allows the kernel to boot.
This commit is contained in:
		
					parent
					
						
							
								559595a985
							
						
					
				
			
			
				commit
				
					
						a1a15ac5f9
					
				
			
		
					 1 changed files with 2 additions and 0 deletions
				
			
		| 
						 | 
				
			
			@ -977,6 +977,8 @@ static void backend_changed(struct xenbus_device *dev,
 | 
			
		|||
		break;
 | 
			
		||||
 | 
			
		||||
	case XenbusStateClosing:
 | 
			
		||||
		if (info->gd == NULL)
 | 
			
		||||
			xenbus_dev_fatal(dev, -ENODEV, "gd is NULL");
 | 
			
		||||
		bd = bdget_disk(info->gd, 0);
 | 
			
		||||
		if (bd == NULL)
 | 
			
		||||
			xenbus_dev_fatal(dev, -ENODEV, "bdget failed");
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue