All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v0] Require human interaction to go to normal shell if grub.cfg has a problem
@ 2013-11-25 23:46 Jon McCune
  2013-11-28  6:41 ` Vladimir 'phcoder' Serbinenko
  2013-11-28 17:34 ` Andrey Borzenkov
  0 siblings, 2 replies; 9+ messages in thread
From: Jon McCune @ 2013-11-25 23:46 UTC (permalink / raw)
  To: grub-devel; +Cc: Jon McCune

The rescue prompt is very useful for human operators, but not so
useful in unattended environments.  Add a facility for rebooting
after a delay, so that, e.g., the system can still PXE boot if
there is no console attached.

Signed-off-by: Jon McCune <jonmccune@google.com>
---
 grub-core/normal/main.c | 25 +++++++++++++++++++++++++
 1 file changed, 25 insertions(+)

diff --git a/grub-core/normal/main.c b/grub-core/normal/main.c
index ad36273..f8953d5 100644
--- a/grub-core/normal/main.c
+++ b/grub-core/normal/main.c
@@ -32,6 +32,7 @@
 #include <grub/i18n.h>
 #include <grub/charset.h>
 #include <grub/script_sh.h>
+#include <grub/time.h>
 
 GRUB_MOD_LICENSE ("GPLv3+");
 
@@ -333,6 +334,21 @@ grub_normal_execute (const char *config, int nested, int batch)
     }
 }
 
+/* Copied from grub-core/commands/sleep.c. */
+static int
+grub_interruptible_millisleep (grub_uint32_t ms)
+{
+  grub_uint64_t start;
+
+  start = grub_get_time_ms ();
+
+  while (grub_get_time_ms () - start < ms)
+    if (grub_getkey_noblock () == GRUB_TERM_ESC)
+      return 1;
+
+  return 0;
+}
+
 /* This starts the normal mode.  */
 void
 grub_enter_normal_mode (const char *config)
@@ -340,6 +356,15 @@ grub_enter_normal_mode (const char *config)
   grub_boot_time ("Entering normal mode");
   nested_level++;
   grub_normal_execute (config, 0, 0);
+  /* Control only returns from grub_normal_execute() if there is some kind of
+   * problem with grub.cfg, like it does not exist.  Reboot by default unless
+   * ESC is pressed within 5 seconds. */
+  grub_printf ("Press ESC in 5 seconds for a rescue shell.\n");
+  if (!grub_interruptible_millisleep (5000))
+    {
+      grub_printf ("Rebooting instead of going to rescue shell.\n");
+      grub_reboot ();
+    }
   grub_boot_time ("Entering shell");
   grub_cmdline_run (0);
   nested_level--;
-- 
1.8.4.1



^ permalink raw reply related	[flat|nested] 9+ messages in thread

* Re: [PATCH v0] Require human interaction to go to normal shell if grub.cfg has a problem
  2013-11-25 23:46 [PATCH v0] Require human interaction to go to normal shell if grub.cfg has a problem Jon McCune
@ 2013-11-28  6:41 ` Vladimir 'phcoder' Serbinenko
  2013-11-28 17:34 ` Andrey Borzenkov
  1 sibling, 0 replies; 9+ messages in thread
From: Vladimir 'phcoder' Serbinenko @ 2013-11-28  6:41 UTC (permalink / raw)
  To: The development of GNU GRUB

[-- Attachment #1: Type: text/plain, Size: 2330 bytes --]

Just a wild idea perhaps we should embed osdetect.cfg in normal.mod in some
form. It would be pretty much the easy solution for many cases.
On Nov 26, 2013 12:47 AM, "Jon McCune" <jonmccune@google.com> wrote:

> The rescue prompt is very useful for human operators, but not so
> useful in unattended environments.  Add a facility for rebooting
> after a delay, so that, e.g., the system can still PXE boot if
> there is no console attached.
>
> Signed-off-by: Jon McCune <jonmccune@google.com>
> ---
>  grub-core/normal/main.c | 25 +++++++++++++++++++++++++
>  1 file changed, 25 insertions(+)
>
> diff --git a/grub-core/normal/main.c b/grub-core/normal/main.c
> index ad36273..f8953d5 100644
> --- a/grub-core/normal/main.c
> +++ b/grub-core/normal/main.c
> @@ -32,6 +32,7 @@
>  #include <grub/i18n.h>
>  #include <grub/charset.h>
>  #include <grub/script_sh.h>
> +#include <grub/time.h>
>
>  GRUB_MOD_LICENSE ("GPLv3+");
>
> @@ -333,6 +334,21 @@ grub_normal_execute (const char *config, int nested,
> int batch)
>      }
>  }
>
> +/* Copied from grub-core/commands/sleep.c. */
> +static int
> +grub_interruptible_millisleep (grub_uint32_t ms)
> +{
> +  grub_uint64_t start;
> +
> +  start = grub_get_time_ms ();
> +
> +  while (grub_get_time_ms () - start < ms)
> +    if (grub_getkey_noblock () == GRUB_TERM_ESC)
> +      return 1;
> +
> +  return 0;
> +}
> +
>  /* This starts the normal mode.  */
>  void
>  grub_enter_normal_mode (const char *config)
> @@ -340,6 +356,15 @@ grub_enter_normal_mode (const char *config)
>    grub_boot_time ("Entering normal mode");
>    nested_level++;
>    grub_normal_execute (config, 0, 0);
> +  /* Control only returns from grub_normal_execute() if there is some
> kind of
> +   * problem with grub.cfg, like it does not exist.  Reboot by default
> unless
> +   * ESC is pressed within 5 seconds. */
> +  grub_printf ("Press ESC in 5 seconds for a rescue shell.\n");
> +  if (!grub_interruptible_millisleep (5000))
> +    {
> +      grub_printf ("Rebooting instead of going to rescue shell.\n");
> +      grub_reboot ();
> +    }
>    grub_boot_time ("Entering shell");
>    grub_cmdline_run (0);
>    nested_level--;
> --
> 1.8.4.1
>
>
> _______________________________________________
> Grub-devel mailing list
> Grub-devel@gnu.org
> https://lists.gnu.org/mailman/listinfo/grub-devel
>

[-- Attachment #2: Type: text/html, Size: 3016 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH v0] Require human interaction to go to normal shell if grub.cfg has a problem
  2013-11-25 23:46 [PATCH v0] Require human interaction to go to normal shell if grub.cfg has a problem Jon McCune
  2013-11-28  6:41 ` Vladimir 'phcoder' Serbinenko
@ 2013-11-28 17:34 ` Andrey Borzenkov
  2013-12-02 20:16   ` Jonathan McCune
  1 sibling, 1 reply; 9+ messages in thread
From: Andrey Borzenkov @ 2013-11-28 17:34 UTC (permalink / raw)
  To: grub-devel

В Mon, 25 Nov 2013 15:46:48 -0800
Jon McCune <jonmccune@google.com> пишет:

> The rescue prompt is very useful for human operators, but not so
> useful in unattended environments.  Add a facility for rebooting
> after a delay, so that, e.g., the system can still PXE boot if
> there is no console attached.
> 
> Signed-off-by: Jon McCune <jonmccune@google.com>
> ---
>  grub-core/normal/main.c | 25 +++++++++++++++++++++++++
>  1 file changed, 25 insertions(+)
> 
> diff --git a/grub-core/normal/main.c b/grub-core/normal/main.c

You get rescue prompt when you can *not* launch normal.mod. 

> index ad36273..f8953d5 100644
> --- a/grub-core/normal/main.c
> +++ b/grub-core/normal/main.c
> @@ -32,6 +32,7 @@
>  #include <grub/i18n.h>
>  #include <grub/charset.h>
>  #include <grub/script_sh.h>
> +#include <grub/time.h>
>  
>  GRUB_MOD_LICENSE ("GPLv3+");
>  
> @@ -333,6 +334,21 @@ grub_normal_execute (const char *config, int nested, int batch)
>      }
>  }
>  
> +/* Copied from grub-core/commands/sleep.c. */
> +static int
> +grub_interruptible_millisleep (grub_uint32_t ms)
> +{
> +  grub_uint64_t start;
> +
> +  start = grub_get_time_ms ();
> +
> +  while (grub_get_time_ms () - start < ms)
> +    if (grub_getkey_noblock () == GRUB_TERM_ESC)
> +      return 1;
> +
> +  return 0;
> +}
> +
>  /* This starts the normal mode.  */
>  void
>  grub_enter_normal_mode (const char *config)
> @@ -340,6 +356,15 @@ grub_enter_normal_mode (const char *config)
>    grub_boot_time ("Entering normal mode");
>    nested_level++;
>    grub_normal_execute (config, 0, 0);
> +  /* Control only returns from grub_normal_execute() if there is some kind of
> +   * problem with grub.cfg, like it does not exist.  Reboot by default unless
> +   * ESC is pressed within 5 seconds. */

grub-mkrescue creates CD that starts normal CLI without grub.cfg. So
please - not as default. You can make it dependent on variable which
can be set in embedded grub.cfg for the cases when you really need it.

> +  grub_printf ("Press ESC in 5 seconds for a rescue shell.\n");

"for a command line". This is not rescue shell.

> +  if (!grub_interruptible_millisleep (5000))
> +    {
> +      grub_printf ("Rebooting instead of going to rescue shell.\n");

Ditto.

> +      grub_reboot ();
> +    }
>    grub_boot_time ("Entering shell");
>    grub_cmdline_run (0);
>    nested_level--;



^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH v0] Require human interaction to go to normal shell if grub.cfg has a problem
  2013-11-28 17:34 ` Andrey Borzenkov
@ 2013-12-02 20:16   ` Jonathan McCune
  2013-12-02 20:38     ` Andrey Borzenkov
  0 siblings, 1 reply; 9+ messages in thread
From: Jonathan McCune @ 2013-12-02 20:16 UTC (permalink / raw)
  To: The development of GNU GRUB

[-- Attachment #1: Type: text/plain, Size: 5087 bytes --]

Replying here instead of the install_c thread to try to keep it clean.  In
response to:

On Mon, Dec 2, 2013 at 11:18 AM, Andrey Borzenkov <arvidjaar@gmail.com>
 wrote:

> On Mon, Dec 2, 2013 at 11:09 PM, Jonathan McCune <jonmccune@google.com>
> wrote:
> > On Sat, Nov 9, 2013 at 4:51 AM, Vladimir 'φ-coder/phcoder' Serbinenko
> > <phcoder@gmail.com> wrote:
> >>
> >> Hello, all. install_c is feature complete and I intent to make it
> >> upstream unless issues are raised until 16 Nov. It's available under
> >> http://git.savannah.gnu.org/cgit/grub.git/log/?h=phcoder/install_c
> >
> >
> > I just realized that the option --grub-mkimage is now accepted silently
> > without having any effect in
> > util/grub-install-common.c:grub_install_parse(). This makes it no longer
> > feasible to easily wrap the mkimage command.  While most of the
> meaningful
> > reasons to wrap grub-mkimage have now been added to grub-install, I've
> run
> > into something I'm struggling to work around:  How do I add custom
> contents
> > to a load.cfg, since util/grub-install.c seems to unconditionally
> > grub_util_unlink(load_cfg)?
> >
>
> Could you provide examples of your grub.cfg usage? I think we need to
> have more real-life use cases to understand better how and when it is
> used.


The real life use case is a headless / unattended environment where it is
better to reboot than to present a console prompt if there is some kind of
GRUB problem, since the machine will just sit there until somebody or
something notices that it never booted up.

I was thinking that adding something in load.cfg (not grub.cfg) might be a
reasonable way to specify the desire to predispose GRUB towards rebooting
in the event of problems for use in headless/unattended environments.
 Whether that is true or not, I see now that the intention is for the
contents of load.cfg to be generated by the appropriate grub tools, and not
from arbitrary shell scripts. No problem.

I'm wondering what is the "right" way to enable rebooting behavior.  Flag
to grub-install? I also think this new functionality should have some kind
of delay and be cancelable at the console (current patch does this).

Thoughts?

Thanks,
-Jon



On Thu, Nov 28, 2013 at 9:34 AM, Andrey Borzenkov <arvidjaar@gmail.com>wrote:

> В Mon, 25 Nov 2013 15:46:48 -0800
> Jon McCune <jonmccune@google.com> пишет:
>
> > The rescue prompt is very useful for human operators, but not so
> > useful in unattended environments.  Add a facility for rebooting
> > after a delay, so that, e.g., the system can still PXE boot if
> > there is no console attached.
> >
> > Signed-off-by: Jon McCune <jonmccune@google.com>
> > ---
> >  grub-core/normal/main.c | 25 +++++++++++++++++++++++++
> >  1 file changed, 25 insertions(+)
> >
> > diff --git a/grub-core/normal/main.c b/grub-core/normal/main.c
>
> You get rescue prompt when you can *not* launch normal.mod.
>
> > index ad36273..f8953d5 100644
> > --- a/grub-core/normal/main.c
> > +++ b/grub-core/normal/main.c
> > @@ -32,6 +32,7 @@
> >  #include <grub/i18n.h>
> >  #include <grub/charset.h>
> >  #include <grub/script_sh.h>
> > +#include <grub/time.h>
> >
> >  GRUB_MOD_LICENSE ("GPLv3+");
> >
> > @@ -333,6 +334,21 @@ grub_normal_execute (const char *config, int
> nested, int batch)
> >      }
> >  }
> >
> > +/* Copied from grub-core/commands/sleep.c. */
> > +static int
> > +grub_interruptible_millisleep (grub_uint32_t ms)
> > +{
> > +  grub_uint64_t start;
> > +
> > +  start = grub_get_time_ms ();
> > +
> > +  while (grub_get_time_ms () - start < ms)
> > +    if (grub_getkey_noblock () == GRUB_TERM_ESC)
> > +      return 1;
> > +
> > +  return 0;
> > +}
> > +
> >  /* This starts the normal mode.  */
> >  void
> >  grub_enter_normal_mode (const char *config)
> > @@ -340,6 +356,15 @@ grub_enter_normal_mode (const char *config)
> >    grub_boot_time ("Entering normal mode");
> >    nested_level++;
> >    grub_normal_execute (config, 0, 0);
> > +  /* Control only returns from grub_normal_execute() if there is some
> kind of
> > +   * problem with grub.cfg, like it does not exist.  Reboot by default
> unless
> > +   * ESC is pressed within 5 seconds. */
>
> grub-mkrescue creates CD that starts normal CLI without grub.cfg. So
> please - not as default. You can make it dependent on variable which
> can be set in embedded grub.cfg for the cases when you really need it.
>
> > +  grub_printf ("Press ESC in 5 seconds for a rescue shell.\n");
>
> "for a command line". This is not rescue shell.
>
> > +  if (!grub_interruptible_millisleep (5000))
> > +    {
> > +      grub_printf ("Rebooting instead of going to rescue shell.\n");
>
> Ditto.
>
> > +      grub_reboot ();
> > +    }
> >    grub_boot_time ("Entering shell");
> >    grub_cmdline_run (0);
> >    nested_level--;
>
>
> _______________________________________________
> Grub-devel mailing list
> Grub-devel@gnu.org
> https://lists.gnu.org/mailman/listinfo/grub-devel
>

[-- Attachment #2: Type: text/html, Size: 7061 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH v0] Require human interaction to go to normal shell if grub.cfg has a problem
  2013-12-02 20:16   ` Jonathan McCune
@ 2013-12-02 20:38     ` Andrey Borzenkov
  2013-12-02 20:49       ` Jonathan McCune
  0 siblings, 1 reply; 9+ messages in thread
From: Andrey Borzenkov @ 2013-12-02 20:38 UTC (permalink / raw)
  To: The development of GNU GRUB

On Tue, Dec 3, 2013 at 12:16 AM, Jonathan McCune <jonmccune@google.com> wrote:
> Replying here instead of the install_c thread to try to keep it clean.  In
> response to:
>
> On Mon, Dec 2, 2013 at 11:18 AM, Andrey Borzenkov <arvidjaar@gmail.com>
> wrote:
>>
>> On Mon, Dec 2, 2013 at 11:09 PM, Jonathan McCune <jonmccune@google.com>
>> wrote:
>> > On Sat, Nov 9, 2013 at 4:51 AM, Vladimir 'φ-coder/phcoder' Serbinenko
>> > <phcoder@gmail.com> wrote:
>> >>
>> >> Hello, all. install_c is feature complete and I intent to make it
>> >> upstream unless issues are raised until 16 Nov. It's available under
>> >> http://git.savannah.gnu.org/cgit/grub.git/log/?h=phcoder/install_c
>> >
>> >
>> > I just realized that the option --grub-mkimage is now accepted silently
>> > without having any effect in
>> > util/grub-install-common.c:grub_install_parse(). This makes it no longer
>> > feasible to easily wrap the mkimage command.  While most of the
>> > meaningful
>> > reasons to wrap grub-mkimage have now been added to grub-install, I've
>> > run
>> > into something I'm struggling to work around:  How do I add custom
>> > contents
>> > to a load.cfg, since util/grub-install.c seems to unconditionally
>> > grub_util_unlink(load_cfg)?
>> >
>>
>> Could you provide examples of your grub.cfg usage? I think we need to
>> have more real-life use cases to understand better how and when it is
>> used.
>
>
> The real life use case is a headless / unattended environment where it is
> better to reboot than to present a console prompt if there is some kind of
> GRUB problem, since the machine will just sit there until somebody or
> something notices that it never booted up.
>

I still do not quite understand how rebooting can fix the problem. The
only case it may happen is when you have intermittent network issues
where grub fails to read some file.

I have a feeling that you attempt to paper over some problem outside of grub.


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH v0] Require human interaction to go to normal shell if grub.cfg has a problem
  2013-12-02 20:38     ` Andrey Borzenkov
@ 2013-12-02 20:49       ` Jonathan McCune
  2013-12-07 12:35         ` Andrey Borzenkov
  0 siblings, 1 reply; 9+ messages in thread
From: Jonathan McCune @ 2013-12-02 20:49 UTC (permalink / raw)
  To: The development of GNU GRUB

[-- Attachment #1: Type: text/plain, Size: 981 bytes --]

On Mon, Dec 2, 2013 at 12:38 PM, Andrey Borzenkov <arvidjaar@gmail.com>wrote:

>
> I still do not quite understand how rebooting can fix the problem. The
> only case it may happen is when you have intermittent network issues
> where grub fails to read some file.
>

Ah, rebooting allows a machine to network boot, e.g., PXE boot using its
NIC.


> I have a feeling that you attempt to paper over some problem outside of
> grub.
>

This is somewhat true, in that grub's own commands should not get the
machine into a state where this functionality is useful.  But furthering
the real life example, users / administrators might make a mistake and
create a broken config.  If the machine is unattended, it seems reasonable
that the user might prefer for it to reboot.  Otherwise, it becomes
necessary to somehow cause a reboot out-of-band.  These out-of-band
solutions are generally proprietary and I think it's a good idea to have
support for avoiding them if desired.

Thanks,
-Jon

[-- Attachment #2: Type: text/html, Size: 1678 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH v0] Require human interaction to go to normal shell if grub.cfg has a problem
  2013-12-02 20:49       ` Jonathan McCune
@ 2013-12-07 12:35         ` Andrey Borzenkov
  2013-12-09 15:25           ` Jonathan McCune
  0 siblings, 1 reply; 9+ messages in thread
From: Andrey Borzenkov @ 2013-12-07 12:35 UTC (permalink / raw)
  To: grub-devel

В Mon, 2 Dec 2013 12:49:03 -0800
Jonathan McCune <jonmccune@google.com> пишет:

> On Mon, Dec 2, 2013 at 12:38 PM, Andrey Borzenkov <arvidjaar@gmail.com>wrote:
> 
> >
> > I still do not quite understand how rebooting can fix the problem. The
> > only case it may happen is when you have intermittent network issues
> > where grub fails to read some file.
> >
> 
> Ah, rebooting allows a machine to network boot, e.g., PXE boot using its
> NIC.
> 

Hmm ... how does it work? After reboot you use the same default boot
order and end up in the same non-working grub, right? May be you want
to not reboot but simply exit grub letting firmware to continue with
next boot choice; I'm not sure whether this works reliably in case of
BIOS.

And I still do not really see how useful it is. Booting from network
will presumably land you into some sort of remote installation
environment. How does it help? How do know it landed there in the first
place?

> 
> > I have a feeling that you attempt to paper over some problem outside of
> > grub.
> >
> 
> This is somewhat true, in that grub's own commands should not get the
> machine into a state where this functionality is useful.  But furthering
> the real life example, users / administrators might make a mistake and
> create a broken config.  If the machine is unattended, it seems reasonable
> that the user might prefer for it to reboot.  Otherwise, it becomes
> necessary to somehow cause a reboot out-of-band.  These out-of-band
> solutions are generally proprietary and I think it's a good idea to have
> support for avoiding them if desired.
> 

Well, I spent last 10+ years doing remote maintenance and I know
pretty well, that if you do not have remote access to console and
possibility to remotely trigger reboot, you will get in trouble in any
case. There are much more situations that require it and they are far
more probable than grub misconfiguration.



^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH v0] Require human interaction to go to normal shell if grub.cfg has a problem
  2013-12-07 12:35         ` Andrey Borzenkov
@ 2013-12-09 15:25           ` Jonathan McCune
  2013-12-09 23:33             ` Vladimir 'φ-coder/phcoder' Serbinenko
  0 siblings, 1 reply; 9+ messages in thread
From: Jonathan McCune @ 2013-12-09 15:25 UTC (permalink / raw)
  To: The development of GNU GRUB

[-- Attachment #1: Type: text/plain, Size: 2950 bytes --]

Inline...

On Sat, Dec 7, 2013 at 4:35 AM, Andrey Borzenkov <arvidjaar@gmail.com>wrote:

> В Mon, 2 Dec 2013 12:49:03 -0800
> Jonathan McCune <jonmccune@google.com> пишет:
>
> > On Mon, Dec 2, 2013 at 12:38 PM, Andrey Borzenkov <arvidjaar@gmail.com
> >wrote:
> >
> > >
> > > I still do not quite understand how rebooting can fix the problem. The
> > > only case it may happen is when you have intermittent network issues
> > > where grub fails to read some file.
> > >
> >
> > Ah, rebooting allows a machine to network boot, e.g., PXE boot using its
> > NIC.
> >
>
> Hmm ... how does it work? After reboot you use the same default boot
> order and end up in the same non-working grub, right? May be you want
> to not reboot but simply exit grub letting firmware to continue with
> next boot choice; I'm not sure whether this works reliably in case of
> BIOS.
>

Good point.  This is another interesting option.  I'm not sure how
generally reliable it is for BIOS systems either, but it seems like a case
worth considering.


> And I still do not really see how useful it is. Booting from network
> will presumably land you into some sort of remote installation
> environment. How does it help? How do know it landed there in the first
> place?
>

I agree that a naive always-netboot-to-reinstall is not a useful
configuration, but DHCP servers can be easily configured to enable or
disable netboot for individual machines.  Sometimes this can be a nice
control point for diagnosing or reconfiguring machines.


> > > I have a feeling that you attempt to paper over some problem outside of
> > > grub.
> > >
> >
> > This is somewhat true, in that grub's own commands should not get the
> > machine into a state where this functionality is useful.  But furthering
> > the real life example, users / administrators might make a mistake and
> > create a broken config.  If the machine is unattended, it seems
> reasonable
> > that the user might prefer for it to reboot.  Otherwise, it becomes
> > necessary to somehow cause a reboot out-of-band.  These out-of-band
> > solutions are generally proprietary and I think it's a good idea to have
> > support for avoiding them if desired.
> >
>
> Well, I spent last 10+ years doing remote maintenance and I know
> pretty well, that if you do not have remote access to console and
> possibility to remotely trigger reboot, you will get in trouble in any
> case. There are much more situations that require it and they are far
> more probable than grub misconfiguration.
>

I concede that some problems inevitably require manual intervention, but
the probabilities of different misconfigurations seem likely to be
deployment-specific.   Remote console / serial concentrators / remote
reboot / humans to press buttons  / etc are neither instantaneous nor free.
 Anyways, I will try my hand at another iteration on this patch.

-Jon

[-- Attachment #2: Type: text/html, Size: 4191 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH v0] Require human interaction to go to normal shell if grub.cfg has a problem
  2013-12-09 15:25           ` Jonathan McCune
@ 2013-12-09 23:33             ` Vladimir 'φ-coder/phcoder' Serbinenko
  0 siblings, 0 replies; 9+ messages in thread
From: Vladimir 'φ-coder/phcoder' Serbinenko @ 2013-12-09 23:33 UTC (permalink / raw)
  To: The development of GNU GRUB

[-- Attachment #1: Type: text/plain, Size: 516 bytes --]

On 09.12.2013 16:25, Jonathan McCune wrote:
> Good point.  This is another interesting option.  I'm not sure how
> generally reliable it is for BIOS systems either, but it seems like a
> case worth considering.
The call has been around for a long time. I think originally it launched
BASIC in ROM.
It hasn't been used by microsoft so may not be reliable.
On the other hand it's used by option roms to indicate to proceed to
next boot option so I expect it to work as long as next boot option is
defined.


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 291 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2013-12-09 23:34 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-11-25 23:46 [PATCH v0] Require human interaction to go to normal shell if grub.cfg has a problem Jon McCune
2013-11-28  6:41 ` Vladimir 'phcoder' Serbinenko
2013-11-28 17:34 ` Andrey Borzenkov
2013-12-02 20:16   ` Jonathan McCune
2013-12-02 20:38     ` Andrey Borzenkov
2013-12-02 20:49       ` Jonathan McCune
2013-12-07 12:35         ` Andrey Borzenkov
2013-12-09 15:25           ` Jonathan McCune
2013-12-09 23:33             ` Vladimir 'φ-coder/phcoder' Serbinenko

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.