When deleting everything from a list, a while loop
is cleaner than list_for_each_safe().
Signed-off-by: NeilBrown <neilb@suse.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
 
 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);
        }