From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752402AbdJ3FBQ (ORCPT ); Mon, 30 Oct 2017 01:01:16 -0400 Received: from mx2.suse.de ([195.135.220.15]:49428 "EHLO mx2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752380AbdJ3FBN (ORCPT ); Mon, 30 Oct 2017 01:01:13 -0400 From: NeilBrown To: Oleg Drokin , Andreas Dilger , James Simmons , Greg Kroah-Hartman Date: Mon, 30 Oct 2017 15:59:27 +1100 Subject: [PATCH 09/10] staging: lustre: simplfy lov_finish_set() Cc: linux-kernel@vger.kernel.org, lustre-devel@lists.lustre.org Message-ID: <150933956733.22133.5869125353037664313.stgit@noble> In-Reply-To: <150933945578.22133.8029060522107378499.stgit@noble> References: <150933945578.22133.8029060522107378499.stgit@noble> User-Agent: StGit/0.17.1-dirty MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org When deleting everything from a list, a while loop is cleaner than list_for_each_safe(). Signed-off-by: NeilBrown --- drivers/staging/lustre/lustre/lov/lov_request.c | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/drivers/staging/lustre/lustre/lov/lov_request.c b/drivers/staging/lustre/lustre/lov/lov_request.c index 9d3b3f3e9f10..54f883e359ce 100644 --- a/drivers/staging/lustre/lustre/lov/lov_request.c +++ b/drivers/staging/lustre/lustre/lov/lov_request.c @@ -48,15 +48,13 @@ static void lov_init_set(struct lov_request_set *set) static void lov_finish_set(struct lov_request_set *set) { - struct list_head *pos, *n; + struct lov_request *req; LASSERT(set); - list_for_each_safe(pos, n, &set->set_list) { - struct lov_request *req = list_entry(pos, - struct lov_request, - rq_link); + while ((req = list_first_entry_or_null(&set->set_list, + struct lov_request, + rq_link)) != NULL) { list_del_init(&req->rq_link); - kfree(req->rq_oi.oi_osfs); kfree(req); }