diff --git a/drivers/net/dummy.c b/drivers/net/dummy.c
index 36d511729f7116549bdf560ee1df3c149f4b737c..2146cf74425ef239f678f484ba37a6ecc272f44c 100644
--- a/drivers/net/dummy.c
+++ b/drivers/net/dummy.c
@@ -132,6 +132,7 @@ static int __init dummy_init_module(void)
 	for (i = 0; i < numdummies && !err; i++)
 		err = dummy_init_one(i); 
 	if (err) { 
+		i--;
 		while (--i >= 0)
 			dummy_free_one(i);
 	}