nfc: s3fwrn5: Release the nfc firmware
authorBongsu Jeon <bongsu.jeon@samsung.com>
Sun, 13 Dec 2020 09:58:50 +0000 (18:58 +0900)
committerJakub Kicinski <kuba@kernel.org>
Tue, 15 Dec 2020 03:20:43 +0000 (19:20 -0800)
add the code to release the nfc firmware when the firmware image size is
wrong.

Fixes: c04c674fadeb ("nfc: s3fwrn5: Add driver for Samsung S3FWRN5 NFC Chip")
Signed-off-by: Bongsu Jeon <bongsu.jeon@samsung.com>
Reviewed-by: Krzysztof Kozlowski <krzk@kernel.org>
Link: https://lore.kernel.org/r/20201213095850.28169-1-bongsu.jeon@samsung.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/nfc/s3fwrn5/firmware.c

index 4b5352e..b70737b 100644 (file)
@@ -293,8 +293,10 @@ int s3fwrn5_fw_request_firmware(struct s3fwrn5_fw_info *fw_info)
        if (ret < 0)
                return ret;
 
-       if (fw->fw->size < S3FWRN5_FW_IMAGE_HEADER_SIZE)
+       if (fw->fw->size < S3FWRN5_FW_IMAGE_HEADER_SIZE) {
+               release_firmware(fw->fw);
                return -EINVAL;
+       }
 
        memcpy(fw->date, fw->fw->data + 0x00, 12);
        fw->date[12] = '\0';