[PATCH] efi_loader: file: set a backend block device for file operations
AKASHI Takahiro
takahiro.akashi at linaro.org
Fri Feb 28 01:05:49 CET 2020
In the current implementation, set_blk_dev() is called in opening a file,
but not in opening a directory. This will cause failures at succeeding
directory operations as the "current" block device remains nullified.
Adding set_blk_dev() fixes this issue.
Signed-off-by: AKASHI Takahiro <takahiro.akashi at linaro.org>
---
lib/efi_loader/efi_file.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/lib/efi_loader/efi_file.c b/lib/efi_loader/efi_file.c
index 140116ddc4ac..ba55b2829e03 100644
--- a/lib/efi_loader/efi_file.c
+++ b/lib/efi_loader/efi_file.c
@@ -235,6 +235,9 @@ static struct efi_file_handle *file_open(struct file_system *fs,
} else {
fh->isdir = 1;
strcpy(fh->path, "");
+
+ if (set_blk_dev(fh))
+ goto error;
}
return &fh->base;
--
2.24.0
More information about the U-Boot
mailing list