diff options
| author | Danny Kukawka <danny.kukawka@bisect.de> | 2012-01-30 23:00:08 +0100 | 
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2012-02-02 16:28:13 -0800 | 
| commit | 3e5ba466d515eb3fb1e0e975a3d8e499126ae2b5 (patch) | |
| tree | e45bb9150ed32baefbb4692d02238287f13fed3f | |
| parent | 7c5763b8453a94871d356f20df30f350f8631e8b (diff) | |
| download | olio-linux-3.10-3e5ba466d515eb3fb1e0e975a3d8e499126ae2b5.tar.xz olio-linux-3.10-3e5ba466d515eb3fb1e0e975a3d8e499126ae2b5.zip  | |
vmw_balloon: fix for a -Wuninitialized warning
Fix for a -Wuninitialized compiler warning. Changed return value of
vmballoon_send_lock_page() from bool to int to be able to distinguish
between the error cases to avoid uninitialized use of hv_status in
vmballoon_reserve_page()
Signed-off-by: Danny Kukawka <danny.kukawka@bisect.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
| -rw-r--r-- | drivers/misc/vmw_balloon.c | 14 | 
1 files changed, 7 insertions, 7 deletions
diff --git a/drivers/misc/vmw_balloon.c b/drivers/misc/vmw_balloon.c index cd41d403c9d..cb56e270da1 100644 --- a/drivers/misc/vmw_balloon.c +++ b/drivers/misc/vmw_balloon.c @@ -314,7 +314,7 @@ static bool vmballoon_send_get_target(struct vmballoon *b, u32 *new_target)   * fear that guest will need it. Host may reject some pages, we need to   * check the return value and maybe submit a different page.   */ -static bool vmballoon_send_lock_page(struct vmballoon *b, unsigned long pfn, +static int vmballoon_send_lock_page(struct vmballoon *b, unsigned long pfn,  				     unsigned int *hv_status)  {  	unsigned long status, dummy; @@ -322,17 +322,17 @@ static bool vmballoon_send_lock_page(struct vmballoon *b, unsigned long pfn,  	pfn32 = (u32)pfn;  	if (pfn32 != pfn) -		return false; +		return -1;  	STATS_INC(b->stats.lock);  	*hv_status = status = VMWARE_BALLOON_CMD(LOCK, pfn, dummy);  	if (vmballoon_check_status(b, status)) -		return true; +		return 0;  	pr_debug("%s - ppn %lx, hv returns %ld\n", __func__, pfn, status);  	STATS_INC(b->stats.lock_fail); -	return false; +	return 1;  }  /* @@ -411,7 +411,7 @@ static int vmballoon_reserve_page(struct vmballoon *b, bool can_sleep)  	struct page *page;  	gfp_t flags;  	unsigned int hv_status; -	bool locked = false; +	int locked;  	flags = can_sleep ? VMW_PAGE_ALLOC_CANSLEEP : VMW_PAGE_ALLOC_NOSLEEP;  	do { @@ -431,7 +431,7 @@ static int vmballoon_reserve_page(struct vmballoon *b, bool can_sleep)  		/* inform monitor */  		locked = vmballoon_send_lock_page(b, page_to_pfn(page), &hv_status); -		if (!locked) { +		if (locked > 0) {  			STATS_INC(b->stats.refused_alloc);  			if (hv_status == VMW_BALLOON_ERROR_RESET || @@ -449,7 +449,7 @@ static int vmballoon_reserve_page(struct vmballoon *b, bool can_sleep)  			if (++b->n_refused_pages >= VMW_BALLOON_MAX_REFUSED)  				return -EIO;  		} -	} while (!locked); +	} while (locked != 0);  	/* track allocated page */  	list_add(&page->lru, &b->pages);  |