[prev in list] [next in list] [prev in thread] [next in thread] 

List:       grub-devel
Subject:    Re: Grub2: add UEFI support for accessing memory address above 4GB.
From:       "Vladimir 'phcoder' Serbinenko" <phcoder () gmail ! com>
Date:       2017-03-07 18:20:05
Message-ID: CAEaD8JN7KdmQU7y7S-EJivg9KWSG5+5LA90aRA5POmNRZ49VXw () mail ! gmail ! com
[Download RAW message or body]

[Attachment #2 (multipart/alternative)]


On Tue, Mar 7, 2017, 10:13 Michel Hermier <michel.hermier@gmail.com> wrote:

>
>
> Le 7 mars 2017 18:22, "Vladimir 'phcoder' Serbinenko" <phcoder@gmail.com>
> a =C3=A9crit :
>
>
>
> On Tue, Mar 7, 2017, 09:09 Michel Hermier <michel.hermier@gmail.com>
> wrote:
>
>
>
> Le 7 mars 2017 17:24, "Vladimir 'phcoder' Serbinenko" <phcoder@gmail.com>
> a =C3=A9crit :
>
>
>
> On Tue, Mar 7, 2017, 08:15 Leif Lindholm <leif.lindholm@linaro.org> wrote=
:
>
> On Tue, Mar 07, 2017 at 01:55:01AM +0000, Yufuping wrote:
> > Who can add the new feature for grub2:
> > Add UEFI support for accessing memory address above 4GB.
>
> Presumably you mean for x86_64?
> Since GRUB supports all 5 architectures currently supported by the
> UEFI specification, 3 of which are 64-bit, it is useful to be a bit
> more precise.
>
> > When using grub2 as PXE downloading engine, grub2 can get initrd
> > file from network and put it to memory above 4GB.
>
> I'd like to know more about the usecase. Generally you should avoid
> downloading or loading too large files in bootloader. I.a. TFTP protocol
> has problems with files over about 100MIB. Generally you should download
> only kernel + initrd and rest of the system should be on iSCSI or NFS.
>
>
> I can think of nothing particularly related to PXE here.
> The x86_64 port currently sets GRUB_EFI_MAX_USABLE_ADDRESS to
> 0xffffffff or 0x7fffffff, depending on toolchain configuration.
>
> ARM64 sets it to 0xffffffffffffULL, and that works fine.
>
> I seem to recall that the x86_64 port was being restricted due to
> known bad firmware encountered in the past. It could be that it would
> be worth adding an option to configure for enabling access to higher
> addresses, alternatively for retaining compatibility with the broken
> systems.
>
> I'm opposed to a config option for this. We don't want to have several
> variants of grub binaries for the same platform. If we want to support
> >4GiB memory we should detect the buggy firmware on runtime. It's pretty
> easy: buggy firmware didn't map memory above 4GiB. We can then either avo=
id
> memory above 4GiB or map it ourselves.
>
>
> What about a dynamic variable instead or at least accessible from script?
> So a user could redefine a value of any kind.
>
> What if advantage compared to automatic detection. And still, I want to
> know about usecase
>
>
> Because I don't trust automatic detection. Even if one say it is 200%
> safe, there is allways that machine that nobody heard of that will fail. =
So
> having user being able to force some values is usually a good idea.
>
This bug is well understood. There is no guesswork involved in detecting
unmapped ranges. And generally allowing overrides results in that everybody
uses overrides rather than reporting and fixing problems. Also exposing
this kind of details in higher levels is a whole different can of worms.
Allocatable ranges are determined before you reach any parser.

>
>
>
> > The feature should support UEFI BIOS boot mode.
>
> I do not understand this statement.
>
> /
>     Leif
>
> _______________________________________________
> Grub-devel mailing list
> Grub-devel@gnu.org
> https://lists.gnu.org/mailman/listinfo/grub-devel
>
>
> _______________________________________________
> Grub-devel mailing list
> Grub-devel@gnu.org
> https://lists.gnu.org/mailman/listinfo/grub-devel
>
>
> _______________________________________________
> Grub-devel mailing list
> Grub-devel@gnu.org
> https://lists.gnu.org/mailman/listinfo/grub-devel
>
>
> _______________________________________________
> Grub-devel mailing list
> Grub-devel@gnu.org
> https://lists.gnu.org/mailman/listinfo/grub-devel
>
>
> _______________________________________________
> Grub-devel mailing list
> Grub-devel@gnu.org
> https://lists.gnu.org/mailman/listinfo/grub-devel
>

[Attachment #5 (text/html)]

<br><br><div class="gmail_quote"><div dir="ltr">On Tue, Mar 7, 2017, 10:13 Michel \
Hermier &lt;<a href="mailto:michel.hermier@gmail.com">michel.hermier@gmail.com</a>&gt; \
wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 \
.8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="auto" \
class="gmail_msg"><div class="gmail_msg"><br class="gmail_msg"><div \
class="gmail_extra gmail_msg"><br class="gmail_msg"><div class="gmail_quote \
gmail_msg">Le  7 mars 2017 18:22, &quot;Vladimir &#39;phcoder&#39; Serbinenko&quot; \
&lt;<a href="mailto:phcoder@gmail.com" class="gmail_msg" \
target="_blank">phcoder@gmail.com</a>&gt; a écrit  :<br type="attribution" \
class="gmail_msg"><blockquote class="m_2625220361138015872quote gmail_msg" \
style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div \
class="m_2625220361138015872quoted-text gmail_msg"><br class="gmail_msg"><br \
class="gmail_msg"><div class="gmail_quote gmail_msg"><div dir="ltr" \
class="gmail_msg">On Tue, Mar 7, 2017, 09:09 Michel Hermier &lt;<a \
href="mailto:michel.hermier@gmail.com" class="gmail_msg" \
target="_blank">michel.hermier@gmail.com</a>&gt; wrote:<br \
class="gmail_msg"></div><blockquote class="gmail_quote gmail_msg" style="margin:0 0 0 \
.8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="auto" \
class="m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"><div \
class="m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"><br \
class="m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"><div \
class="gmail_extra m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"><br \
class="m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"><div \
class="gmail_quote m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg">Le  \
7 mars 2017 17:24, &quot;Vladimir &#39;phcoder&#39; Serbinenko&quot; &lt;<a \
href="mailto:phcoder@gmail.com" \
class="m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg" \
target="_blank">phcoder@gmail.com</a>&gt; a écrit  :<br type="attribution" \
class="m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"><blockquote \
class="m_2625220361138015872m_3484573264226180382m_-4417564263042796321quote \
m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg" style="margin:0 0 0 \
.8ex;border-left:1px #ccc solid;padding-left:1ex"><div \
class="m_2625220361138015872m_3484573264226180382m_-4417564263042796321quoted-text \
m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"><br \
class="m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"><br \
class="m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"><div \
class="gmail_quote m_2625220361138015872m_3484573264226180382gmail_msg \
gmail_msg"><div dir="ltr" class="m_2625220361138015872m_3484573264226180382gmail_msg \
gmail_msg">On Tue, Mar 7, 2017, 08:15 Leif Lindholm &lt;<a \
href="mailto:leif.lindholm@linaro.org" \
class="m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg" \
target="_blank">leif.lindholm@linaro.org</a>&gt; wrote:<br \
class="m_2625220361138015872m_3484573264226180382gmail_msg \
gmail_msg"></div><blockquote class="gmail_quote \
m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg" style="margin:0 0 0 \
.8ex;border-left:1px #ccc solid;padding-left:1ex">On Tue, Mar 07, 2017 at 01:55:01AM \
+0000, Yufuping wrote:<br \
class="m_2625220361138015872m_3484573264226180382m_-4417564263042796321m_3116463110773228278gmail_msg \
m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"> &gt; Who can add the \
new feature for grub2:<br \
class="m_2625220361138015872m_3484573264226180382m_-4417564263042796321m_3116463110773228278gmail_msg \
m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"> &gt; Add UEFI support \
for accessing memory address above 4GB.<br \
class="m_2625220361138015872m_3484573264226180382m_-4417564263042796321m_3116463110773228278gmail_msg \
m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"> <br \
class="m_2625220361138015872m_3484573264226180382m_-4417564263042796321m_3116463110773228278gmail_msg \
m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"> Presumably you mean \
for x86_64?<br class="m_2625220361138015872m_3484573264226180382m_-4417564263042796321m_3116463110773228278gmail_msg \
m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"> Since GRUB supports \
all 5 architectures currently supported by the<br \
class="m_2625220361138015872m_3484573264226180382m_-4417564263042796321m_3116463110773228278gmail_msg \
m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"> UEFI specification, 3 \
of which are 64-bit, it is useful to be a bit<br \
class="m_2625220361138015872m_3484573264226180382m_-4417564263042796321m_3116463110773228278gmail_msg \
m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"> more precise.<br \
class="m_2625220361138015872m_3484573264226180382m_-4417564263042796321m_3116463110773228278gmail_msg \
m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"> <br \
class="m_2625220361138015872m_3484573264226180382m_-4417564263042796321m_3116463110773228278gmail_msg \
m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"> &gt; When using grub2 \
as PXE downloading engine, grub2 can get initrd<br \
class="m_2625220361138015872m_3484573264226180382m_-4417564263042796321m_3116463110773228278gmail_msg \
m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"> &gt; file from \
network and put it to memory above 4GB.<br \
class="m_2625220361138015872m_3484573264226180382m_-4417564263042796321m_3116463110773228278gmail_msg \
m_2625220361138015872m_3484573264226180382gmail_msg \
gmail_msg"></blockquote></div></div><div \
class="m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg">I&#39;d like to \
know more about the usecase. Generally you should avoid downloading or loading too \
large files in bootloader. I.a. TFTP protocol has problems with files over about \
100MIB. Generally you should download only kernel + initrd and rest of the system \
should be on iSCSI or NFS.</div><div \
class="m_2625220361138015872m_3484573264226180382m_-4417564263042796321quoted-text \
m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"><div \
class="gmail_quote m_2625220361138015872m_3484573264226180382gmail_msg \
gmail_msg"><blockquote class="gmail_quote \
m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg" style="margin:0 0 0 \
.8ex;border-left:1px #ccc solid;padding-left:1ex"> <br \
class="m_2625220361138015872m_3484573264226180382m_-4417564263042796321m_3116463110773228278gmail_msg \
m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"> I can think of \
nothing particularly related to PXE here.<br \
class="m_2625220361138015872m_3484573264226180382m_-4417564263042796321m_3116463110773228278gmail_msg \
m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"> The x86_64 port \
currently sets GRUB_EFI_MAX_USABLE_ADDRESS to<br \
class="m_2625220361138015872m_3484573264226180382m_-4417564263042796321m_3116463110773228278gmail_msg \
m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"> 0xffffffff or \
0x7fffffff, depending on toolchain configuration.<br \
class="m_2625220361138015872m_3484573264226180382m_-4417564263042796321m_3116463110773228278gmail_msg \
m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"> <br \
class="m_2625220361138015872m_3484573264226180382m_-4417564263042796321m_3116463110773228278gmail_msg \
m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"> ARM64 sets it to \
0xffffffffffffULL, and that works fine.<br \
class="m_2625220361138015872m_3484573264226180382m_-4417564263042796321m_3116463110773228278gmail_msg \
m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"> <br \
class="m_2625220361138015872m_3484573264226180382m_-4417564263042796321m_3116463110773228278gmail_msg \
m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"> I seem to recall that \
the x86_64 port was being restricted due to<br \
class="m_2625220361138015872m_3484573264226180382m_-4417564263042796321m_3116463110773228278gmail_msg \
m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"> known bad firmware \
encountered in the past. It could be that it would<br \
class="m_2625220361138015872m_3484573264226180382m_-4417564263042796321m_3116463110773228278gmail_msg \
m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"> be worth adding an \
option to configure for enabling access to higher<br \
class="m_2625220361138015872m_3484573264226180382m_-4417564263042796321m_3116463110773228278gmail_msg \
m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"> addresses, \
alternatively for retaining compatibility with the broken<br \
class="m_2625220361138015872m_3484573264226180382m_-4417564263042796321m_3116463110773228278gmail_msg \
m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"> systems.<br \
class="m_2625220361138015872m_3484573264226180382m_-4417564263042796321m_3116463110773228278gmail_msg \
m_2625220361138015872m_3484573264226180382gmail_msg \
gmail_msg"></blockquote></div></div><div \
class="m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg">I&#39;m opposed \
to a config option for this. We don&#39;t want to have several variants of grub \
binaries for the same platform. If we want to support &gt;4GiB memory we should \
detect the buggy firmware on runtime. It&#39;s pretty easy: buggy firmware didn&#39;t \
map memory above 4GiB. We can then either avoid memory above 4GiB or map it \
ourselves.</div></blockquote></div></div></div><div dir="auto" \
class="m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"><br \
class="m_2625220361138015872m_3484573264226180382gmail_msg \
gmail_msg"></div></div><div dir="auto" \
class="m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"><div dir="auto" \
class="m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg">What about a \
dynamic variable instead or at least accessible from script? So a user could redefine \
a value of any kind.</div></div></blockquote></div></div><div class="gmail_msg">What \
if advantage compared to automatic detection. And still, I want to know about \
usecase</div></blockquote></div></div></div><div dir="auto" class="gmail_msg"><br \
class="gmail_msg"></div></div><div dir="auto" class="gmail_msg"><div dir="auto" \
class="gmail_msg">Because I don&#39;t trust automatic detection. Even if one say it \
is 200% safe, there is allways that machine that nobody heard of that will fail. So \
having user being able to force some values is usually a good \
idea.</div></div></blockquote></div><div>This bug is well understood. There is no \
guesswork involved in detecting unmapped ranges. And generally allowing overrides \
results in that everybody uses overrides rather than reporting and fixing problems. \
Also exposing this kind of details in higher levels is a whole different can of \
worms. Allocatable ranges are determined before you reach any parser.</div><div \
class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 \
.8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="auto" \
class="gmail_msg"><div dir="auto" class="gmail_msg"><br class="gmail_msg"></div><div \
dir="auto" class="gmail_msg"><div class="gmail_extra gmail_msg"><div \
class="gmail_quote gmail_msg"><blockquote class="m_2625220361138015872quote \
gmail_msg" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div \
class="m_2625220361138015872elided-text gmail_msg"><div class="gmail_quote \
gmail_msg"><blockquote class="gmail_quote gmail_msg" style="margin:0 0 0 \
.8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="auto" \
class="m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"><div dir="auto" \
class="m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"><br \
class="m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"></div><div \
dir="auto" class="m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"><div \
class="gmail_extra m_2625220361138015872m_3484573264226180382gmail_msg \
gmail_msg"><div class="gmail_quote \
m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"><blockquote \
class="m_2625220361138015872m_3484573264226180382m_-4417564263042796321quote \
m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg" style="margin:0 0 0 \
.8ex;border-left:1px #ccc solid;padding-left:1ex"><div \
class="m_2625220361138015872m_3484573264226180382m_-4417564263042796321elided-text \
m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"><div \
class="gmail_quote m_2625220361138015872m_3484573264226180382gmail_msg \
gmail_msg"><blockquote class="gmail_quote \
m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg" style="margin:0 0 0 \
.8ex;border-left:1px #ccc solid;padding-left:1ex"> <br \
class="m_2625220361138015872m_3484573264226180382m_-4417564263042796321m_3116463110773228278gmail_msg \
m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"> &gt; The feature \
should support UEFI BIOS boot mode.<br \
class="m_2625220361138015872m_3484573264226180382m_-4417564263042796321m_3116463110773228278gmail_msg \
m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"> <br \
class="m_2625220361138015872m_3484573264226180382m_-4417564263042796321m_3116463110773228278gmail_msg \
m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"> I do not understand \
this statement.<br class="m_2625220361138015872m_3484573264226180382m_-4417564263042796321m_3116463110773228278gmail_msg \
m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"> <br \
class="m_2625220361138015872m_3484573264226180382m_-4417564263042796321m_3116463110773228278gmail_msg \
m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"> /<br \
class="m_2625220361138015872m_3484573264226180382m_-4417564263042796321m_3116463110773228278gmail_msg \
m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg">  Leif<br \
class="m_2625220361138015872m_3484573264226180382m_-4417564263042796321m_3116463110773228278gmail_msg \
m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"> <br \
class="m_2625220361138015872m_3484573264226180382m_-4417564263042796321m_3116463110773228278gmail_msg \
m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"> \
_______________________________________________<br \
class="m_2625220361138015872m_3484573264226180382m_-4417564263042796321m_3116463110773228278gmail_msg \
m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"> Grub-devel mailing \
list<br class="m_2625220361138015872m_3484573264226180382m_-4417564263042796321m_3116463110773228278gmail_msg \
m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"> <a \
href="mailto:Grub-devel@gnu.org" \
class="m_2625220361138015872m_3484573264226180382m_-4417564263042796321m_3116463110773228278gmail_msg \
m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg" \
target="_blank">Grub-devel@gnu.org</a><br \
class="m_2625220361138015872m_3484573264226180382m_-4417564263042796321m_3116463110773228278gmail_msg \
m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"> <a \
href="https://lists.gnu.org/mailman/listinfo/grub-devel" rel="noreferrer" \
class="m_2625220361138015872m_3484573264226180382m_-4417564263042796321m_3116463110773228278gmail_msg \
m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg" \
target="_blank">https://lists.gnu.org/mailman/listinfo/grub-devel</a><br \
class="m_2625220361138015872m_3484573264226180382m_-4417564263042796321m_3116463110773228278gmail_msg \
</div><br class="m_2625220361138015872m_3484573264226180382gmail_msg \
gmail_msg">_______________________________________________<br \
class="m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"> Grub-devel \
mailing list<br class="m_2625220361138015872m_3484573264226180382gmail_msg \
gmail_msg"> <a href="mailto:Grub-devel@gnu.org" \
class="m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg" \
target="_blank">Grub-devel@gnu.org</a><br \
class="m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"> <a \
href="https://lists.gnu.org/mailman/listinfo/grub-devel" rel="noreferrer" \
class="m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg" \
target="_blank">https://lists.gnu.org/mailman/listinfo/grub-devel</a><br \
class="m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"> <br \
class="m_2625220361138015872m_3484573264226180382gmail_msg \
gmail_msg"></blockquote></div><br \
class="m_2625220361138015872m_3484573264226180382gmail_msg \
gmail_msg"></div></div></div> _______________________________________________<br \
class="m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"> Grub-devel \
mailing list<br class="m_2625220361138015872m_3484573264226180382gmail_msg \
gmail_msg"> <a href="mailto:Grub-devel@gnu.org" \
class="m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg" \
target="_blank">Grub-devel@gnu.org</a><br \
class="m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"> <a \
href="https://lists.gnu.org/mailman/listinfo/grub-devel" rel="noreferrer" \
class="m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg" \
target="_blank">https://lists.gnu.org/mailman/listinfo/grub-devel</a><br \
class="m_2625220361138015872m_3484573264226180382gmail_msg gmail_msg"> \
</blockquote></div> </div><br \
class="gmail_msg">_______________________________________________<br \
class="gmail_msg"> Grub-devel mailing list<br class="gmail_msg">
<a href="mailto:Grub-devel@gnu.org" class="gmail_msg" \
target="_blank">Grub-devel@gnu.org</a><br class="gmail_msg"> <a \
href="https://lists.gnu.org/mailman/listinfo/grub-devel" rel="noreferrer" \
class="gmail_msg" target="_blank">https://lists.gnu.org/mailman/listinfo/grub-devel</a><br \
class="gmail_msg"> <br class="gmail_msg"></blockquote></div><br \
class="gmail_msg"></div></div></div> \
_______________________________________________<br class="gmail_msg"> Grub-devel \
mailing list<br class="gmail_msg"> <a href="mailto:Grub-devel@gnu.org" \
class="gmail_msg" target="_blank">Grub-devel@gnu.org</a><br class="gmail_msg"> <a \
href="https://lists.gnu.org/mailman/listinfo/grub-devel" rel="noreferrer" \
class="gmail_msg" target="_blank">https://lists.gnu.org/mailman/listinfo/grub-devel</a><br \
class="gmail_msg"> </blockquote></div>



_______________________________________________
Grub-devel mailing list
Grub-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/grub-devel


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic