diff --git a/init/main.c b/init/main.c
index 4a2f0898dda1d00bd0dcdeeb2d545007382f3dd3..f715b9b897538cb04dc94fa900bd8c3f5d6e26e7 100644
--- a/init/main.c
+++ b/init/main.c
@@ -582,7 +582,7 @@ static void __init do_initcalls(void)
 
 		result = (*call)();
 
-		if (result && (result != -ENODEV || initcall_debug)) {
+		if (result && result != -ENODEV && initcall_debug) {
 			sprintf(msgbuf, "error code %d", result);
 			msg = msgbuf;
 		}