-// SPDX-License-Identifier: GPL-2.0
+// SPDX-License-Identifier: GPL-2.0-only
/*
* Driver for MikroTik RouterBoot hard config.
*
/* Temporary buffer same size as the outbuf */
templen = *outlen;
tempbuf = kmalloc(templen, GFP_KERNEL);
- if (!outbuf)
+ if (!tempbuf)
return -ENOMEM;
/* Concatenate into the outbuf */
hc_buflen = mtd->size;
hc_buf = kmalloc(hc_buflen, GFP_KERNEL);
- if (!hc_buf)
+ if (!hc_buf) {
return -ENOMEM;
+ put_mtd_device(mtd);
+ }
ret = mtd_read(mtd, 0, hc_buflen, &bytes_read, hc_buf);
+ put_mtd_device(mtd);
if (bytes_read != hc_buflen) {
ret = -EIO;