UPSTREAM: nvmem: core: fix error path in nvmem_add_cells()
[firefly-linux-kernel-4.4.55.git] / drivers / nvmem / core.c
index 9d11d98373128fef3de3406975d8bcc2ca286b9a..de14fae6f7f6ff973fad8d417a3eef3470fabfda 100644 (file)
@@ -294,9 +294,11 @@ static int nvmem_add_cells(struct nvmem_device *nvmem,
 
        return 0;
 err:
-       while (--i)
+       while (i--)
                nvmem_cell_drop(cells[i]);
 
+       kfree(cells);
+
        return rval;
 }