From 428e60e079ba700dad3d883ec12653f1a5cedea6 Mon Sep 17 00:00:00 2001
From: Heinrich Schuchardt <xypron.glpk@gmx.de>
Date: Thu, 8 Mar 2018 22:52:29 +0100
Subject: [PATCH] yaffs2: iterator variable cannot be NULL

The iterator of list_for_each() is never NULL.

Identified with coccinelle.

Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
---
 fs/yaffs2/yaffs_guts.c | 4 ++--
 fs/yaffs2/yaffsfs.c    | 9 +++------
 2 files changed, 5 insertions(+), 8 deletions(-)

diff --git a/fs/yaffs2/yaffs_guts.c b/fs/yaffs2/yaffs_guts.c
index bbe0d700fb..c8b27adda9 100644
--- a/fs/yaffs2/yaffs_guts.c
+++ b/fs/yaffs2/yaffs_guts.c
@@ -1872,8 +1872,8 @@ static int yaffs_new_obj_id(struct yaffs_dev *dev)
 		n += YAFFS_NOBJECT_BUCKETS;
 		list_for_each(i, &dev->obj_bucket[bucket].list) {
 			/* If there is already one in the list */
-			if (i && list_entry(i, struct yaffs_obj,
-					    hash_link)->obj_id == n) {
+			if (list_entry(i, struct yaffs_obj,
+				       hash_link)->obj_id == n) {
 				found = 0;
 				break;
 			}
diff --git a/fs/yaffs2/yaffsfs.c b/fs/yaffs2/yaffsfs.c
index ba76a5ccdb..47abc6beda 100644
--- a/fs/yaffs2/yaffsfs.c
+++ b/fs/yaffs2/yaffsfs.c
@@ -2847,12 +2847,9 @@ static void yaffsfs_RemoveObjectCallback(struct yaffs_obj *obj)
 	 * the next one to prevent a hanging ptr.
 	 */
 	list_for_each(i, &search_contexts) {
-		if (i) {
-			dsc = list_entry(i, struct yaffsfs_DirSearchContxt,
-					 others);
-			if (dsc->nextReturn == obj)
-				yaffsfs_DirAdvance(dsc);
-		}
+		dsc = list_entry(i, struct yaffsfs_DirSearchContxt, others);
+		if (dsc->nextReturn == obj)
+			yaffsfs_DirAdvance(dsc);
 	}
 
 }
-- 
2.39.5