From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jeff Liu Subject: [PATCH] xen: simplify balloon_first_page() with list_first_entry_or_null() Date: Wed, 13 Nov 2013 19:44:45 +0800 Message-ID: <5283662D.1010500@oracle.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from mail6.bemta5.messagelabs.com ([195.245.231.135]) by lists.xen.org with esmtp (Exim 4.72) (envelope-from ) id 1VgYrJ-0003tq-Dr for xen-devel@lists.xenproject.org; Wed, 13 Nov 2013 11:43:45 +0000 List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: xen-devel@lists.xenproject.org Cc: "@oracle.com>"@aserz7021.oracle.com List-Id: xen-devel@lists.xenproject.org From: Jie Liu Simplify the code logic of balloon_first_page() by replacing the combination of list_empty() and list_first_entry() with list_first_entry_or_null(). As a net win, we can change this routine to inline as now it's one line. Signed-off-by: Jie Liu --- drivers/xen/balloon.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/drivers/xen/balloon.c b/drivers/xen/balloon.c index b232908..0e4ca20 100644 --- a/drivers/xen/balloon.c +++ b/drivers/xen/balloon.c @@ -157,11 +157,10 @@ static struct page *balloon_retrieve(bool prefer_highmem) return page; } -static struct page *balloon_first_page(void) +static inline struct page *balloon_first_page(void) { - if (list_empty(&ballooned_pages)) - return NULL; - return list_entry(ballooned_pages.next, struct page, lru); + return list_first_entry_or_null(&ballooned_pages, + struct page, lru); } static struct page *balloon_next_page(struct page *page) -- 1.7.9.5