From: "Ferry Toth" <fntoth@gmail.com>
To: Guillaume Champagne <champagne.guillaume.c@gmail.com>
Cc: yocto@lists.yoctoproject.org,
Richard Purdie <richard.purdie@linuxfoundation.org>
Subject: Re: Gatesgarth-24.0.4 image-live fails
Date: Tue, 25 May 2021 18:25:35 +0200 [thread overview]
Message-ID: <53a089e6-8c8e-4794-ca19-9d5103bb101a@gmail.com> (raw)
In-Reply-To: <CAHSN6OfgL-aBYM-oB=WEJkohsV0xehaH+YJzv=mjv8PTw99Lkg@mail.gmail.com>
Hi
Op 25-05-2021 om 15:09 schreef Guillaume Champagne:
> Le mar. 25 mai 2021 à 08:19, Ferry Toth <fntoth@gmail.com> a écrit :
>> Adding Richard and Guillaume.
> Hi,
>
> it seems seems edison-image.bb sets ROOTFS as empty:
> http://git.yoctoproject.org/cgit/cgit.cgi/meta-intel-edison/tree/meta-intel-edison-distro/recipes-core/images/edison-image.bb#n17
>
> so do_bootimg won't depend on ${PN}:do_image:${LIVE_ROOTFS_TYPE}. That
> dependency would, I think, create the folder you mentioned.
>
> Maybe the patch wrongly assumes that if ROOTFS is empty, we shouldn't
> add a dependency on "do_image.${LIVE_ROOTFS_TYPE}" at all since It
> looks like edison-image.bb still depends on
> ${PN}:do_image.${LIVE_ROOTFS_TYPE} even though ROOTFS is empty. I
> haven't looked too much into why edison-image works this way.
It may well be a bug in meta-intel-edison. Although you are looking at
the very, very old code.
So what we have now is:
https://github.com/edison-fw/meta-intel-edison/blob/master/meta-intel-edison-distro/recipes-core/images/edison-image-minimal.bb
this generates a dir edison-image-1.0/hddimg/ containing: bzImage
initrd ldlinux.sys libcom32.c32 libutil.c32 syslinux.cfg vesamenu.c32
and this should generate in dir deploy-edison-image-image-complete/ a
file called edison-image-edison.hddimg
which it does without the patch. So would would I set rootfs to to make
it work?
BTW It also generates a directory iso and associated iso image. Never
understood why, we also set NOISO = "1"
>> Op 24-05-2021 om 14:39 schreef Ferry Toth:
>>> Wow, that got messed up, let me retry.
>>>
>>> Op 24-05-2021 om 14:19 schreef Ferry Toth:
>>>> Accidentally I refreshed poky and rebuilt. The image-live
>>>> (do_bootimg) fails when building hddimg with the following:
>>>>
>>> ERROR: edison-image-1.0-r0 do_bootimg: Error executing a python
>>> function in exec_python_func() autogenerated:
>>>
>>> The stack trace of python calls that resulted in this
>>> exception/failure was:
>>> File: 'exec_python_func() autogenerated', lineno: 2, function: <module>
>>> 0001:
>>> *** 0002:do_bootimg(d)
>>> 0003:
>>> File:
>>> '/home/ferry/tmp/edison-intel/my/edison-morty/out/linux64/poky/meta/classes/image-live.bbclass',
>>> lineno: 258, function: do_bootimg
>>> 0254: if d.getVar("PCBIOS") == "1":
>>> 0255: bb.build.exec_func('build_syslinux_cfg', d)
>>> 0256: if d.getVar("EFI") == "1":
>>> 0257: bb.build.exec_func('build_efi_cfg', d)
>>> *** 0258: bb.build.exec_func('build_hddimg', d)
>>> 0259: bb.build.exec_func('build_iso', d)
>>> 0260: bb.build.exec_func('create_symlinks', d)
>>> 0261:}
>>> 0262:do_bootimg[subimages] = "hddimg iso"
>>> File:
>>> '/home/ferry/tmp/edison-intel/my/edison-morty/out/linux64/poky/bitbake/lib/bb/build.py',
>>> lineno: 256, function: exec_func
>>> 0252: with bb.utils.fileslocked(lockfiles):
>>> 0253: if ispython:
>>> 0254: exec_func_python(func, d, runfile, cwd=adir)
>>> 0255: else:
>>> *** 0256: exec_func_shell(func, d, runfile, cwd=adir)
>>> 0257:
>>> 0258: try:
>>> 0259: curcwd = os.getcwd()
>>> 0260: except:
>>> File:
>>> '/home/ferry/tmp/edison-intel/my/edison-morty/out/linux64/poky/bitbake/lib/bb/build.py',
>>> lineno: 503, function: exec_func_shell
>>> 0499: with open(fifopath, 'r+b', buffering=0) as fifo:
>>> 0500: try:
>>> 0501: bb.debug(2, "Executing shell function %s" % func)
>>> 0502: with open(os.devnull, 'r+') as stdin, logfile:
>>> *** 0503: bb.process.run(cmd, shell=False,
>>> stdin=stdin, log=logfile, extrafiles=[(fifo,readfifo)])
>>> 0504: except bb.process.ExecutionError as exe:
>>> 0505: # Find the backtrace that the shell trap generated
>>> 0506: backtrace_marker_regex = re.compile(r"WARNING:
>>> Backtrace \(BB generated script\)")
>>> 0507: stdout_lines = (exe.stdout or "").split("\n")
>>> File:
>>> '/home/ferry/tmp/edison-intel/my/edison-morty/out/linux64/poky/bitbake/lib/bb/process.py',
>>> lineno: 184, function: run
>>> 0180: if not stderr is None:
>>> 0181: stderr = stderr.decode("utf-8")
>>> 0182:
>>> 0183: if pipe.returncode != 0:
>>> *** 0184: raise ExecutionError(cmd, pipe.returncode, stdout,
>>> stderr)
>>> 0185: return stdout, stderr
>>> Exception: bb.process.ExecutionError: Execution of
>>> '/home/ferry/tmp/edison-intel/my/edison-morty/out/linux64/build/tmp/work/edison-poky-linux/edison-image/1.0-r0/temp/run.build_hddimg.256530'
>>> failed with exit code 1:
>>> mkdosfs: unable to create
>>> /home/ferry/tmp/edison-intel/my/edison-morty/out/linux64/build/tmp/work/edison-poky-linux/edison-image/1.0-r0/deploy-edison-image-image-complete/edison-image-edison-20210524113748.hddimg
>>> mkfs.fat 4.1 (2017-01-24)
>>> WARNING: exit code 1 from a shell command.
>>>
>>>> The reason is that the directory deploy-edison-image-image-complete
>>>> doesn't exist at the time mkdosfs want to write. However after
>>>> completing the remainder of image live the directory does exists.
>>>> Consequently, running bitbake a second time image-live succeeds.
>>>>
>>>> I've tried various thing including expressly creating the directory
>>>> before mkdosfs, but nothing worked. It seems I don't understand how
>>>> it is supposed to work in the first place.
>>>>
>>>> However, I managed to trace back the issue to this commit 91e4a1c1
>>>> "image-live.bbclass: optional depends when ROOTFS empty".
>>>>
>>>> Reverting this resolves the issue.
>>>>
>>>> Any idea what could be wrong?
>>>>
next prev parent reply other threads:[~2021-05-25 16:25 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-05-24 12:19 Gatesgarth-24.0.4 image-live fails Ferry Toth
2021-05-24 12:39 ` Ferry Toth
2021-05-25 12:19 ` Ferry Toth
2021-05-25 13:09 ` Guillaume Champagne
2021-05-25 16:25 ` Ferry Toth [this message]
[not found] ` <CAHSN6OeuxLdXds5w07sBG9-DKL+KxWOjrCpXGeztyvuK2qVDdQ@mail.gmail.com>
2021-05-26 10:25 ` Ferry Toth
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=53a089e6-8c8e-4794-ca19-9d5103bb101a@gmail.com \
--to=fntoth@gmail.com \
--cc=champagne.guillaume.c@gmail.com \
--cc=richard.purdie@linuxfoundation.org \
--cc=yocto@lists.yoctoproject.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.