grub-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] efi term: open input console exlusively


From: Andrei Borzenkov
Subject: Re: [PATCH] efi term: open input console exlusively
Date: Sat, 30 Apr 2016 09:39:34 +0300
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.7.2

28.04.2016 21:14, Josef Bacik пишет:
> We've had issues with a bunch of our EFI machines getting random console input
> from God knows where.  This stops our provisioning because the timeout 
> countdown
> stops as it thinks we pressed a button, which we most certaintly did not.  So
> open the input console in exclusive mode to make sure only the guy behind the
> wheel gets to type.

I do not understand how it can fix your issue except by unintentional
side effect, sorry. Exclusive open will (attempt to) detach other
*consumers* of this protocol, but he problem is related to suppliers.

While it is possible that some driver that opens console also somehow
feeds input into it, it looks like too heavy hammer, sorry. We really
need better understanding what happens here.

>  With this patch we can no provision these weird machines.
> Thanks,
> 
> Signed-off-by: Josef Bacik <address@hidden>
> ---
>  grub-core/term/efi/console.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/grub-core/term/efi/console.c b/grub-core/term/efi/console.c
> index 7d31095..5be8530 100644
> --- a/grub-core/term/efi/console.c
> +++ b/grub-core/term/efi/console.c
> @@ -201,7 +201,7 @@ grub_efi_console_input_init (struct grub_term_input *term)
>  
>    text_input = 
> grub_efi_open_protocol(grub_efi_system_table->console_in_handler,
>                                     &text_input_ex_guid,
> -                                   GRUB_EFI_OPEN_PROTOCOL_GET_PROTOCOL);
> +                                   GRUB_EFI_OPEN_PROTOCOL_BY_EXCLUSIVE);
>    term->data = (void *)text_input;
>  
>    return 0;
> 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]