UEFI specification requires pointers that are passed to protocol member
functions to be aligned.  There's a u16_strdup in that function which
doesn't make sense otherwise  Add a comment so no one removes it
accidentally

Signed-off-by: Ilias Apalodimas <ilias.apalodi...@linaro.org>
---
 lib/efi_loader/efi_file.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/lib/efi_loader/efi_file.c b/lib/efi_loader/efi_file.c
index 8480ed3007c7..5c254ccdd64d 100644
--- a/lib/efi_loader/efi_file.c
+++ b/lib/efi_loader/efi_file.c
@@ -1135,6 +1135,11 @@ struct efi_file_handle *efi_file_from_path(struct 
efi_device_path *fp)
                        return NULL;
                }
 
+               /*
+                * UEFI specification requires pointers that are passed to
+                * protocol member functions to be aligned.  So memcpy it
+                * unconditionally
+                */
                filename = u16_strdup(fdp->str);
                if (!filename)
                        return NULL;
-- 
2.38.1

Reply via email to