Commit da27a2438 (efivarfs: guid part of filenames are case-insensitive) fails to boot,
because the kernel creates files in the form of dump-type-x-y-z-GUID. Since the kernel already
created files in this form, these type of files obviously exist, so the right course of action
is to relax the restriction in efivarfs_valid_name.
Signed-off-by: Maarten Lankhorst <[email protected]>
Cc: [email protected] [3.8]
---
diff --git a/drivers/firmware/efivars.c b/drivers/firmware/efivars.c
index 8bcb595..3ee1882 100644
--- a/drivers/firmware/efivars.c
+++ b/drivers/firmware/efivars.c
@@ -921,8 +921,8 @@ static bool efivarfs_valid_name(const char *str, int len)
if (len < GUID_LEN + 2)
return false;
- /* GUID should be right after the first '-' */
- if (s - 1 != strchr(str, '-'))
+ /* GUID should be prefixed with - */
+ if (s[-1] != '-')
return false;
/*
On Thu, 2013-03-07 at 16:06 +0100, Maarten Lankhorst wrote:
> Commit da27a2438 (efivarfs: guid part of filenames are case-insensitive) fails to boot,
> because the kernel creates files in the form of dump-type-x-y-z-GUID. Since the kernel already
> created files in this form, these type of files obviously exist, so the right course of action
> is to relax the restriction in efivarfs_valid_name.
>
> Signed-off-by: Maarten Lankhorst <[email protected]>
> Cc: [email protected] [3.8]
http://marc.info/?l=linux-kernel&m=136266857528382&w=2