diff options
Diffstat (limited to 'drivers/misc/vmw_balloon.c')
| -rw-r--r-- | drivers/misc/vmw_balloon.c | 8 | 
1 files changed, 3 insertions, 5 deletions
diff --git a/drivers/misc/vmw_balloon.c b/drivers/misc/vmw_balloon.c index 6df51ee8db62..cc1d18b3df5c 100644 --- a/drivers/misc/vmw_balloon.c +++ b/drivers/misc/vmw_balloon.c @@ -1737,7 +1737,7 @@ static int vmballoon_migratepage(struct balloon_dev_info *b_dev_info,  {  	unsigned long status, flags;  	struct vmballoon *b; -	int ret; +	int ret = 0;  	b = container_of(b_dev_info, struct vmballoon, b_dev_info); @@ -1796,17 +1796,15 @@ static int vmballoon_migratepage(struct balloon_dev_info *b_dev_info,  		 * A failure happened. While we can deflate the page we just  		 * inflated, this deflation can also encounter an error. Instead  		 * we will decrease the size of the balloon to reflect the -		 * change and report failure. +		 * change.  		 */  		atomic64_dec(&b->size); -		ret = -EBUSY;  	} else {  		/*  		 * Success. Take a reference for the page, and we will add it to  		 * the list after acquiring the lock.  		 */  		get_page(newpage); -		ret = 0;  	}  	/* Update the balloon list under the @pages_lock */ @@ -1817,7 +1815,7 @@ static int vmballoon_migratepage(struct balloon_dev_info *b_dev_info,  	 * If we succeed just insert it to the list and update the statistics  	 * under the lock.  	 */ -	if (!ret) { +	if (status == VMW_BALLOON_SUCCESS) {  		balloon_page_insert(&b->b_dev_info, newpage);  		__count_vm_event(BALLOON_MIGRATE);  	}  | 
