---
 drivers/firmware/efi/libstub/efi-stub-helper.c |    3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

Index: linux-2.6/drivers/firmware/efi/libstub/efi-stub-helper.c
===================================================================
--- linux-2.6.orig/drivers/firmware/efi/libstub/efi-stub-helper.c
+++ linux-2.6/drivers/firmware/efi/libstub/efi-stub-helper.c
@@ -431,7 +431,8 @@ efi_status_t handle_cmdline_files(efi_sy
 				status = efi_file_read(files[j].handle,
 						       &chunksize,
 						       (void *)addr);
-				if (status != EFI_SUCCESS) {
+				if (status != EFI_SUCCESS ||
+				    chunksize > size || !chunksize) {
 					pr_efi_err(sys_table_arg, "Failed to read file\n");
 					goto free_file_total;
 				}