Whamcloud - gitweb
LU-6142 lov: simplfy lov_finish_set() 35/49735/2
authorMr. NeilBrown <neilb@suse.de>
Mon, 23 Jan 2023 21:29:57 +0000 (16:29 -0500)
committerOleg Drokin <green@whamcloud.com>
Fri, 3 Feb 2023 06:48:51 +0000 (06:48 +0000)
When deleting everything from a list, a while loop
is cleaner than list_for_each_safe().

Linux-commit: dff162689a4061ff30d3a05f9d790e375c06ab8f

Change-Id: I90d98ebf14f461796d6f9d31a2c62de1520034cc
Signed-off-by: Mr. NeilBrown <neilb@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/49735
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Reviewed-by: Jian Yu <yujian@whamcloud.com>
Reviewed-by: Shaun Tancheff <shaun.tancheff@hpe.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
lustre/lov/lov_request.c

index 4994011..511e423 100644 (file)
@@ -47,19 +47,16 @@ 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;
 
        ENTRY;
-
        LASSERT(set != NULL);
-       list_for_each_safe(pos, n, &set->set_list) {
-               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);
-
                if (req->rq_oi.oi_osfs)
                        OBD_FREE_PTR(req->rq_oi.oi_osfs);
-
                OBD_FREE_PTR(req);
        }