Openembedded Core Discussions
 help / color / mirror / Atom feed
* [sumo][PATCH 0/1] wic/isoimage-isohybrid.py: fix booting from removable media
@ 2018-11-02 15:00 Arsalan Awan
  2018-11-02 15:01 ` [sumo][PATCH 1/1] " Arsalan Awan
  0 siblings, 1 reply; 9+ messages in thread
From: Arsalan Awan @ 2018-11-02 15:00 UTC (permalink / raw)
  To: openembedded-core

From: "Arsalan H. Awan" <Arsalan_Awan@mentor.com>

The mkhybridiso image created using the isoimage-isohybrid.py
WIC source plugin fails to boot from a removable storage media
such as USB. This is due to the grub-efi bootloader filename
being deployed i.e.: "grub-efi-bootx64.efi" which must be
"bootx64.efi" in this case of a removable media.

Source: https://www.rodsbooks.com/efi-bootloaders/principles.html
Quote: "The fallback boot loader mentioned earlier (EFI/BOOT/bootx64.efi,
        or variants of that, depending on the architecture) is something
        of a special case. This filename was originally intended for use
        only on removable media, so that they could be booted to install
        an OS. (If not for that fixed filename, a factory-fresh computer
        wouldn't be able to boot anything!)"

The following changes since commit 30b055d2296f060a4ca054d042f353a2153fdd4e:

  externalsrc.bbclass: Set BB_DONT_CACHE for non-target recipes (2018-10-18 11:08:46 +0100)

are available in the git repository at:

  git://github.com/ArsalanHAwan/openembedded-core sumo
  https://github.com/ArsalanHAwan/openembedded-core/tree/sumo

Arsalan H. Awan (1):
  wic/isoimage-isohybrid.py: fix booting from removable media

 scripts/lib/wic/plugins/source/isoimage-isohybrid.py | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

-- 
2.7.4



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

* [sumo][PATCH 1/1] wic/isoimage-isohybrid.py: fix booting from removable media
  2018-11-02 15:00 [sumo][PATCH 0/1] wic/isoimage-isohybrid.py: fix booting from removable media Arsalan Awan
@ 2018-11-02 15:01 ` Arsalan Awan
  2018-11-02 23:43   ` akuster808
  0 siblings, 1 reply; 9+ messages in thread
From: Arsalan Awan @ 2018-11-02 15:01 UTC (permalink / raw)
  To: openembedded-core

From: "Arsalan H. Awan" <Arsalan_Awan@mentor.com>

The EFI bootloader name and path for being able to boot from a
removable storage media - such as USB - must be like:

  /EFI/BOOT/boot<arch>.efi
  /EFI/BOOT/bootx64.efi
  /EFI/BOOT/bootia32.efi
  /EFI/BOOT/bootaa64.efi

otherwise system will not be able to boot from it.

This commit fixes the grub-efi bootloader destination image name
accordingly just like efi_populate() function does it in
meta/classes/grub-efi.bbclass.

Signed-off-by: Arsalan H. Awan <Arsalan_Awan@mentor.com>
---
 scripts/lib/wic/plugins/source/isoimage-isohybrid.py | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/scripts/lib/wic/plugins/source/isoimage-isohybrid.py b/scripts/lib/wic/plugins/source/isoimage-isohybrid.py
index d6bd3bf..9a30713 100644
--- a/scripts/lib/wic/plugins/source/isoimage-isohybrid.py
+++ b/scripts/lib/wic/plugins/source/isoimage-isohybrid.py
@@ -329,13 +329,15 @@ class IsoImagePlugin(SourcePlugin):
 
                 if re.match("x86_64", target_arch):
                     grub_image = "grub-efi-bootx64.efi"
+                    grub_image_dst = "bootx64.efi"
                 elif re.match('i.86', target_arch):
                     grub_image = "grub-efi-bootia32.efi"
+                    grub_image_dst = "bootia32.efi"
                 else:
                     raise WicError("grub-efi is incompatible with target %s" %
                                    target_arch)
 
-                grub_target = os.path.join(target_dir, grub_image)
+                grub_target = os.path.join(target_dir, grub_image_dst)
                 if not os.path.isfile(grub_target):
                     grub_src = os.path.join(deploy_dir, grub_image)
                     if not os.path.exists(grub_src):
-- 
2.7.4



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

* Re: [sumo][PATCH 1/1] wic/isoimage-isohybrid.py: fix booting from removable media
  2018-11-02 15:01 ` [sumo][PATCH 1/1] " Arsalan Awan
@ 2018-11-02 23:43   ` akuster808
  2018-11-05  7:34     ` Awan, Arsalan
  0 siblings, 1 reply; 9+ messages in thread
From: akuster808 @ 2018-11-02 23:43 UTC (permalink / raw)
  To: Arsalan Awan, openembedded-core

Arsalan,


On 11/2/18 8:01 AM, Arsalan Awan wrote:
> From: "Arsalan H. Awan" <Arsalan_Awan@mentor.com>
>
> The EFI bootloader name and path for being able to boot from a
> removable storage media - such as USB - must be like:
>
>   /EFI/BOOT/boot<arch>.efi
>   /EFI/BOOT/bootx64.efi
>   /EFI/BOOT/bootia32.efi
>   /EFI/BOOT/bootaa64.efi
>
> otherwise system will not be able to boot from it.

Is this fixed in Master & Thud ?

- armin

>
> This commit fixes the grub-efi bootloader destination image name
> accordingly just like efi_populate() function does it in
> meta/classes/grub-efi.bbclass.
>
> Signed-off-by: Arsalan H. Awan <Arsalan_Awan@mentor.com>
> ---
>  scripts/lib/wic/plugins/source/isoimage-isohybrid.py | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/scripts/lib/wic/plugins/source/isoimage-isohybrid.py b/scripts/lib/wic/plugins/source/isoimage-isohybrid.py
> index d6bd3bf..9a30713 100644
> --- a/scripts/lib/wic/plugins/source/isoimage-isohybrid.py
> +++ b/scripts/lib/wic/plugins/source/isoimage-isohybrid.py
> @@ -329,13 +329,15 @@ class IsoImagePlugin(SourcePlugin):
>  
>                  if re.match("x86_64", target_arch):
>                      grub_image = "grub-efi-bootx64.efi"
> +                    grub_image_dst = "bootx64.efi"
>                  elif re.match('i.86', target_arch):
>                      grub_image = "grub-efi-bootia32.efi"
> +                    grub_image_dst = "bootia32.efi"
>                  else:
>                      raise WicError("grub-efi is incompatible with target %s" %
>                                     target_arch)
>  
> -                grub_target = os.path.join(target_dir, grub_image)
> +                grub_target = os.path.join(target_dir, grub_image_dst)
>                  if not os.path.isfile(grub_target):
>                      grub_src = os.path.join(deploy_dir, grub_image)
>                      if not os.path.exists(grub_src):


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

* Re: [sumo][PATCH 1/1] wic/isoimage-isohybrid.py: fix booting from removable media
  2018-11-02 23:43   ` akuster808
@ 2018-11-05  7:34     ` Awan, Arsalan
  2018-11-13 10:46       ` Awan, Arsalan
  0 siblings, 1 reply; 9+ messages in thread
From: Awan, Arsalan @ 2018-11-05  7:34 UTC (permalink / raw)
  To: akuster808, openembedded-core@lists.openembedded.org

> Arsalan,
> 
> 
> On 11/2/18 8:01 AM, Arsalan Awan wrote:
> > From: "Arsalan H. Awan" <Arsalan_Awan@mentor.com>
> >
> > The EFI bootloader name and path for being able to boot from a
> > removable storage media - such as USB - must be like:
> >
> >   /EFI/BOOT/boot<arch>.efi
> >   /EFI/BOOT/bootx64.efi
> >   /EFI/BOOT/bootia32.efi
> >   /EFI/BOOT/bootaa64.efi
> >
> > otherwise system will not be able to boot from it.
> 
> Is this fixed in Master & Thud ?
> 
> - armin

Yes Armin! It is fixed in Thud and Master.

-
Arsalan

> 
> >
> > This commit fixes the grub-efi bootloader destination image name
> > accordingly just like efi_populate() function does it in
> > meta/classes/grub-efi.bbclass.
> >
> > Signed-off-by: Arsalan H. Awan <Arsalan_Awan@mentor.com>
> > ---
> >  scripts/lib/wic/plugins/source/isoimage-isohybrid.py | 4 +++-
> >  1 file changed, 3 insertions(+), 1 deletion(-)
> >
> > diff --git a/scripts/lib/wic/plugins/source/isoimage-isohybrid.py b/scripts/lib/wic/plugins/source/isoimage-isohybrid.py
> > index d6bd3bf..9a30713 100644
> > --- a/scripts/lib/wic/plugins/source/isoimage-isohybrid.py
> > +++ b/scripts/lib/wic/plugins/source/isoimage-isohybrid.py
> > @@ -329,13 +329,15 @@ class IsoImagePlugin(SourcePlugin):
> >
> >                  if re.match("x86_64", target_arch):
> >                      grub_image = "grub-efi-bootx64.efi"
> > +                    grub_image_dst = "bootx64.efi"
> >                  elif re.match('i.86', target_arch):
> >                      grub_image = "grub-efi-bootia32.efi"
> > +                    grub_image_dst = "bootia32.efi"
> >                  else:
> >                      raise WicError("grub-efi is incompatible with target %s" %
> >                                     target_arch)
> >
> > -                grub_target = os.path.join(target_dir, grub_image)
> > +                grub_target = os.path.join(target_dir, grub_image_dst)
> >                  if not os.path.isfile(grub_target):
> >                      grub_src = os.path.join(deploy_dir, grub_image)
> >                      if not os.path.exists(grub_src):

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

* Re: [sumo][PATCH 1/1] wic/isoimage-isohybrid.py: fix booting from removable media
  2018-11-05  7:34     ` Awan, Arsalan
@ 2018-11-13 10:46       ` Awan, Arsalan
  2018-11-13 11:16         ` Mittal, Anuj
  2018-11-13 15:42         ` akuster808
  0 siblings, 2 replies; 9+ messages in thread
From: Awan, Arsalan @ 2018-11-13 10:46 UTC (permalink / raw)
  To: akuster808, openembedded-core@lists.openembedded.org

ping

> > Arsalan,
> >
> >
> > On 11/2/18 8:01 AM, Arsalan Awan wrote:
> > > From: "Arsalan H. Awan" <Arsalan_Awan@mentor.com>
> > >
> > > The EFI bootloader name and path for being able to boot from a
> > > removable storage media - such as USB - must be like:
> > >
> > >   /EFI/BOOT/boot<arch>.efi
> > >   /EFI/BOOT/bootx64.efi
> > >   /EFI/BOOT/bootia32.efi
> > >   /EFI/BOOT/bootaa64.efi
> > >
> > > otherwise system will not be able to boot from it.
> >
> > Is this fixed in Master & Thud ?
> >
> > - armin
> 
> Yes Armin! It is fixed in Thud and Master.
> 
> -
> Arsalan
> 
> >
> > >
> > > This commit fixes the grub-efi bootloader destination image name
> > > accordingly just like efi_populate() function does it in
> > > meta/classes/grub-efi.bbclass.
> > >
> > > Signed-off-by: Arsalan H. Awan <Arsalan_Awan@mentor.com>
> > > ---
> > >  scripts/lib/wic/plugins/source/isoimage-isohybrid.py | 4 +++-
> > >  1 file changed, 3 insertions(+), 1 deletion(-)
> > >
> > > diff --git a/scripts/lib/wic/plugins/source/isoimage-isohybrid.py b/scripts/lib/wic/plugins/source/isoimage-isohybrid.py
> > > index d6bd3bf..9a30713 100644
> > > --- a/scripts/lib/wic/plugins/source/isoimage-isohybrid.py
> > > +++ b/scripts/lib/wic/plugins/source/isoimage-isohybrid.py
> > > @@ -329,13 +329,15 @@ class IsoImagePlugin(SourcePlugin):
> > >
> > >                  if re.match("x86_64", target_arch):
> > >                      grub_image = "grub-efi-bootx64.efi"
> > > +                    grub_image_dst = "bootx64.efi"
> > >                  elif re.match('i.86', target_arch):
> > >                      grub_image = "grub-efi-bootia32.efi"
> > > +                    grub_image_dst = "bootia32.efi"
> > >                  else:
> > >                      raise WicError("grub-efi is incompatible with target %s" %
> > >                                     target_arch)
> > >
> > > -                grub_target = os.path.join(target_dir, grub_image)
> > > +                grub_target = os.path.join(target_dir, grub_image_dst)
> > >                  if not os.path.isfile(grub_target):
> > >                      grub_src = os.path.join(deploy_dir, grub_image)
> > >                      if not os.path.exists(grub_src):


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

* Re: [sumo][PATCH 1/1] wic/isoimage-isohybrid.py: fix booting from removable media
  2018-11-13 10:46       ` Awan, Arsalan
@ 2018-11-13 11:16         ` Mittal, Anuj
  2018-11-13 11:28           ` Awan, Arsalan
  2018-11-13 15:42         ` akuster808
  1 sibling, 1 reply; 9+ messages in thread
From: Mittal, Anuj @ 2018-11-13 11:16 UTC (permalink / raw)
  To: openembedded-core@lists.openembedded.org, akuster808@gmail.com,
	Arsalan_Awan@mentor.com

On Tue, 2018-11-13 at 10:46 +0000, Awan, Arsalan wrote:
> ping
> 
> > > Arsalan,
> > > 
> > > 
> > > On 11/2/18 8:01 AM, Arsalan Awan wrote:
> > > > From: "Arsalan H. Awan" <Arsalan_Awan@mentor.com>
> > > > 
> > > > The EFI bootloader name and path for being able to boot from a
> > > > removable storage media - such as USB - must be like:
> > > > 
> > > >    /EFI/BOOT/boot<arch>.efi
> > > >    /EFI/BOOT/bootx64.efi
> > > >    /EFI/BOOT/bootia32.efi
> > > >    /EFI/BOOT/bootaa64.efi
> > > > 
> > > > otherwise system will not be able to boot from it.
> > > 
> > > Is this fixed in Master & Thud ?
> > > 
> > > - armin
> > 
> > Yes Armin! It is fixed in Thud and Master.
> > 

Would it make more sense to simply backport:


https://git.yoctoproject.org/cgit/cgit.cgi/poky/commit?id=b591fb889b02ba82e6e35bb64b9fcb313f4bb5cb

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

* Re: [sumo][PATCH 1/1] wic/isoimage-isohybrid.py: fix booting from removable media
  2018-11-13 11:16         ` Mittal, Anuj
@ 2018-11-13 11:28           ` Awan, Arsalan
  2018-11-13 16:14             ` akuster808
  0 siblings, 1 reply; 9+ messages in thread
From: Awan, Arsalan @ 2018-11-13 11:28 UTC (permalink / raw)
  To: Mittal, Anuj, openembedded-core@lists.openembedded.org,
	akuster808@gmail.com

> > ping
> >
> > > > Arsalan,
> > > >
> > > >
> > > > On 11/2/18 8:01 AM, Arsalan Awan wrote:
> > > > > From: "Arsalan H. Awan" <Arsalan_Awan@mentor.com>
> > > > >
> > > > > The EFI bootloader name and path for being able to boot from a
> > > > > removable storage media - such as USB - must be like:
> > > > >
> > > > >    /EFI/BOOT/boot<arch>.efi
> > > > >    /EFI/BOOT/bootx64.efi
> > > > >    /EFI/BOOT/bootia32.efi
> > > > >    /EFI/BOOT/bootaa64.efi
> > > > >
> > > > > otherwise system will not be able to boot from it.
> > > >
> > > > Is this fixed in Master & Thud ?
> > > >
> > > > - armin
> > >
> > > Yes Armin! It is fixed in Thud and Master.
> > >
> 
> Would it make more sense to simply backport:
> 
> 
> https://git.yoctoproject.org/cgit/cgit.cgi/poky/commit?id=b591fb889b02ba82e6e35bb64b9fcb313f4bb5cb

Yes!
That would be fine.

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

* Re: [sumo][PATCH 1/1] wic/isoimage-isohybrid.py: fix booting from removable media
  2018-11-13 10:46       ` Awan, Arsalan
  2018-11-13 11:16         ` Mittal, Anuj
@ 2018-11-13 15:42         ` akuster808
  1 sibling, 0 replies; 9+ messages in thread
From: akuster808 @ 2018-11-13 15:42 UTC (permalink / raw)
  To: Awan, Arsalan, openembedded-core@lists.openembedded.org


On 11/13/18 2:46 AM, Awan, Arsalan wrote:
> ping

It is stagged for the next build

http://git.yoctoproject.org/cgit/cgit.cgi/poky-contrib/log/?h=stable/sumo-nmut

- armin

>>> Arsalan,
>>>
>>>
>>> On 11/2/18 8:01 AM, Arsalan Awan wrote:
>>>> From: "Arsalan H. Awan" <Arsalan_Awan@mentor.com>
>>>>
>>>> The EFI bootloader name and path for being able to boot from a
>>>> removable storage media - such as USB - must be like:
>>>>
>>>>   /EFI/BOOT/boot<arch>.efi
>>>>   /EFI/BOOT/bootx64.efi
>>>>   /EFI/BOOT/bootia32.efi
>>>>   /EFI/BOOT/bootaa64.efi
>>>>
>>>> otherwise system will not be able to boot from it.
>>> Is this fixed in Master & Thud ?
>>>
>>> - armin
>> Yes Armin! It is fixed in Thud and Master.
>>
>> -
>> Arsalan
>>
>>>> This commit fixes the grub-efi bootloader destination image name
>>>> accordingly just like efi_populate() function does it in
>>>> meta/classes/grub-efi.bbclass.
>>>>
>>>> Signed-off-by: Arsalan H. Awan <Arsalan_Awan@mentor.com>
>>>> ---
>>>>  scripts/lib/wic/plugins/source/isoimage-isohybrid.py | 4 +++-
>>>>  1 file changed, 3 insertions(+), 1 deletion(-)
>>>>
>>>> diff --git a/scripts/lib/wic/plugins/source/isoimage-isohybrid.py b/scripts/lib/wic/plugins/source/isoimage-isohybrid.py
>>>> index d6bd3bf..9a30713 100644
>>>> --- a/scripts/lib/wic/plugins/source/isoimage-isohybrid.py
>>>> +++ b/scripts/lib/wic/plugins/source/isoimage-isohybrid.py
>>>> @@ -329,13 +329,15 @@ class IsoImagePlugin(SourcePlugin):
>>>>
>>>>                  if re.match("x86_64", target_arch):
>>>>                      grub_image = "grub-efi-bootx64.efi"
>>>> +                    grub_image_dst = "bootx64.efi"
>>>>                  elif re.match('i.86', target_arch):
>>>>                      grub_image = "grub-efi-bootia32.efi"
>>>> +                    grub_image_dst = "bootia32.efi"
>>>>                  else:
>>>>                      raise WicError("grub-efi is incompatible with target %s" %
>>>>                                     target_arch)
>>>>
>>>> -                grub_target = os.path.join(target_dir, grub_image)
>>>> +                grub_target = os.path.join(target_dir, grub_image_dst)
>>>>                  if not os.path.isfile(grub_target):
>>>>                      grub_src = os.path.join(deploy_dir, grub_image)
>>>>                      if not os.path.exists(grub_src):


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

* Re: [sumo][PATCH 1/1] wic/isoimage-isohybrid.py: fix booting from removable media
  2018-11-13 11:28           ` Awan, Arsalan
@ 2018-11-13 16:14             ` akuster808
  0 siblings, 0 replies; 9+ messages in thread
From: akuster808 @ 2018-11-13 16:14 UTC (permalink / raw)
  To: Awan, Arsalan, Mittal, Anuj,
	openembedded-core@lists.openembedded.org


On 11/13/18 3:28 AM, Awan, Arsalan wrote:
>>> ping
>>>
>>>>> Arsalan,
>>>>>
>>>>>
>>>>> On 11/2/18 8:01 AM, Arsalan Awan wrote:
>>>>>> From: "Arsalan H. Awan" <Arsalan_Awan@mentor.com>
>>>>>>
>>>>>> The EFI bootloader name and path for being able to boot from a
>>>>>> removable storage media - such as USB - must be like:
>>>>>>
>>>>>>    /EFI/BOOT/boot<arch>.efi
>>>>>>    /EFI/BOOT/bootx64.efi
>>>>>>    /EFI/BOOT/bootia32.efi
>>>>>>    /EFI/BOOT/bootaa64.efi
>>>>>>
>>>>>> otherwise system will not be able to boot from it.
>>>>> Is this fixed in Master & Thud ?
>>>>>
>>>>> - armin
>>>> Yes Armin! It is fixed in Thud and Master.
>>>>
>> Would it make more sense to simply backport:
>>
>>
>> https://git.yoctoproject.org/cgit/cgit.cgi/poky/commit?id=b591fb889b02ba82e6e35bb64b9fcb313f4bb5cb

got it thanks.

- armin

> Yes!
> That would be fine.


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

end of thread, other threads:[~2018-11-13 16:14 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-11-02 15:00 [sumo][PATCH 0/1] wic/isoimage-isohybrid.py: fix booting from removable media Arsalan Awan
2018-11-02 15:01 ` [sumo][PATCH 1/1] " Arsalan Awan
2018-11-02 23:43   ` akuster808
2018-11-05  7:34     ` Awan, Arsalan
2018-11-13 10:46       ` Awan, Arsalan
2018-11-13 11:16         ` Mittal, Anuj
2018-11-13 11:28           ` Awan, Arsalan
2018-11-13 16:14             ` akuster808
2018-11-13 15:42         ` akuster808

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox