From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932608AbbKRNyf (ORCPT ); Wed, 18 Nov 2015 08:54:35 -0500 Received: from m50-135.163.com ([123.125.50.135]:42354 "EHLO m50-135.163.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754824AbbKRNye (ORCPT ); Wed, 18 Nov 2015 08:54:34 -0500 From: Geliang Tang To: Andrew Morton , "Kirill A. Shutemov" , "Aneesh Kumar K.V" , Vineet Gupta , Mel Gorman Cc: Geliang Tang , linux-mm@kvack.org, linux-kernel@vger.kernel.org Subject: [PATCH] mm, thp: use list_first_entry_or_null() Date: Wed, 18 Nov 2015 21:52:29 +0800 Message-Id: <007bfe4833c1e47bd313de6a1be65d61aa7e36e2.1447854574.git.geliangtang@163.com> X-Mailer: git-send-email 2.5.0 X-CM-TRANSID: D9GowAAHfZ2hgkxWxlqoAA--.105S3 X-Coremail-Antispam: 1Uf129KBjvdXoWruF4xWw15CF13CF48Zw4xWFg_yoWfGrg_CF 4kXrZxXry7tr4kWan5G3WDt343WFy0kw4kXws7tryUtr9Ygr48J3Z8ZF43ArWrWr4xWas8 Jwn8Z3s7WF4qgjkaLaAFLSUrUUUUUb8apTn2vfkv8UJUUUU8Yxn0WfASr-VFAUDa7-sFnT 9fnUUvcSsGvfC2KfnxnUUI43ZEXa7IU15fHUUUUUU== X-Originating-IP: [116.77.130.235] X-CM-SenderInfo: 5jhoxtpqjwt0rj6rljoofrz/1tbiNQG2mVSIKNNEOgAAsC Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Simplify the code with list_first_entry_or_null(). Signed-off-by: Geliang Tang --- mm/pgtable-generic.c | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/mm/pgtable-generic.c b/mm/pgtable-generic.c index 69261d4..c311a2e 100644 --- a/mm/pgtable-generic.c +++ b/mm/pgtable-generic.c @@ -164,13 +164,10 @@ pgtable_t pgtable_trans_huge_withdraw(struct mm_struct *mm, pmd_t *pmdp) /* FIFO */ pgtable = pmd_huge_pte(mm, pmdp); - if (list_empty(&pgtable->lru)) - pmd_huge_pte(mm, pmdp) = NULL; - else { - pmd_huge_pte(mm, pmdp) = list_entry(pgtable->lru.next, - struct page, lru); + pmd_huge_pte(mm, pmdp) = list_first_entry_or_null(&pgtable->lru, + struct page, lru); + if (pmd_huge_pte(mm, pmdp)) list_del(&pgtable->lru); - } return pgtable; } #endif -- 2.5.0