From: Jie Liu <jeff....@oracle.com>

Simplify the code in current_tail() via list_last_entry_or_null().

Signed-off-by: Jie Liu <jeff....@oracle.com>
---
 fs/gfs2/log.c | 10 +++-------
 1 file changed, 3 insertions(+), 7 deletions(-)

diff --git a/fs/gfs2/log.c b/fs/gfs2/log.c
index 610613f..555f767 100644
--- a/fs/gfs2/log.c
+++ b/fs/gfs2/log.c
@@ -441,13 +441,9 @@ static unsigned int current_tail(struct gfs2_sbd *sdp)
 
        spin_lock(&sdp->sd_ail_lock);
 
-       if (list_empty(&sdp->sd_ail1_list)) {
-               tail = sdp->sd_log_head;
-       } else {
-               tr = list_entry(sdp->sd_ail1_list.prev, struct gfs2_trans,
-                               tr_list);
-               tail = tr->tr_first;
-       }
+       tr = list_last_entry_or_null(&sdp->sd_ail1_list, struct gfs2_trans,
+                                    tr_list);
+       tail = tr ? tr->tr_first : sdp->sd_log_head;
 
        spin_unlock(&sdp->sd_ail_lock);
 
-- 
1.8.3.2

Reply via email to