Skip to contentSkip to conversation

systemd: avoid boot failures for mips64

PATCH In review Chen Qi 2 participants 5 messages Oct 9, 2016 – Oct 17, 2016

lore
Share & tools
lore

Chen Qi

author
#0 lore raw

cover systemd: avoid boot failures for mips64

The following changes since commit 747f59f5103995654f2b10a52d1dfd2dd4ad1a0e:

linux-yocto/4.8: Enable R8169 driver since its needed by supported platforms (2016-10-08 07:45:53 +0100)

are available in the git repository at:

git://git.openembedded.org/openembedded-core-contrib ChenQi/bug10250
http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=ChenQi/bug10250

Chen Qi (1):
systemd: avoid boot failures for mips64

 meta/recipes-core/systemd/systemd.inc | 1 +
 1 file changed, 1 insertion(+)
Signature · 1 line
1.9.1
author
#1 lore raw

PATCH 1/1 systemd: avoid boot failures for mips64

If we start a systemd based qemumips64 target with 'pam' enabled in DISTRO_FEATURES, we could not login in successfully. After you provide username and password to the login prompt, the login prompt just comes up again. Besides, there are other boot failures.

Append '-O0' flag for mips64 target as a workaround to this problem.

[YOCTO #10250]

---
 meta/recipes-core/systemd/systemd.inc | 1 +
 1 file changed, 1 insertion(+)
meta/recipes-core/systemd/systemd.inc +1 -0
index f800f42..db588e7 100644
@@ -23,3 +23,4 @@ PV = "230+git${SRCPV}"
 S = "${WORKDIR}/git"
 
 LDFLAGS_append_libc-uclibc = " -lrt -lssp_nonshared -lssp "
+CFLAGS_append_mips64 = " -O0"
Signature · 1 line
1.9.1
#2 lore raw
Quoted 19 lines · Chen Qi

If we start a systemd based qemumips64 target with 'pam' enabled in DISTRO_FEATURES, we could not login in successfully. After you provide username and password to the login prompt, the login prompt just comes up again. Besides, there are other boot failures.

Append '-O0' flag for mips64 target as a workaround to this problem.

[YOCTO #10250]

---
 meta/recipes-core/systemd/systemd.inc | 1 +
 1 file changed, 1 insertion(+)
meta/recipes-core/systemd/systemd.inc +0 -0
index f800f42..db588e7 100644

meta/recipes-core/systemd/systemd.inc PV = "230+git${SRCPV}" · line 26

Quoted 4 lines
meta/recipes-core/systemd/systemd.inc +1 -0
@@ -23,3 +23,4 @@ PV = "230+git${SRCPV}"
 S = "${WORKDIR}/git"
 
 LDFLAGS_append_libc-uclibc = " -lrt -lssp_nonshared -lssp "
+CFLAGS_append_mips64 = " -O0"

can you instead explore a bit more e.g. disabling lto etc. CFLAGS_append_mips64 = " -fno-lto"

and also consider little endian

Quoted 8 lines

--
1.9.1

--
_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.openembedded.org/mailman/listinfo/openembedded-core

author
#3 lore raw
Quoted 22 lines · Khem Raj
Quoted 21 lines · Chen Qi

If we start a systemd based qemumips64 target with 'pam' enabled in DISTRO_FEATURES, we could not login in successfully. After you provide username and password to the login prompt, the login prompt just comes up again. Besides, there are other boot failures.

Append '-O0' flag for mips64 target as a workaround to this problem.

[YOCTO #10250]

---
  meta/recipes-core/systemd/systemd.inc | 1 +
  1 file changed, 1 insertion(+)
meta/recipes-core/systemd/systemd.inc +0 -0
index f800f42..db588e7 100644
@@ -23,3 +23,4 @@ PV = "230+git${SRCPV}"
  S = "${WORKDIR}/git"
 
Quoted 7 lines

meta/recipes-core/systemd/systemd.inc PV = "230+git${SRCPV}" · line 26

Quoted 2 lines
meta/recipes-core/systemd/systemd.inc +1 -0
  LDFLAGS_append_libc-uclibc = " -lrt -lssp_nonshared -lssp "
+CFLAGS_append_mips64 = " -O0"

can you instead explore a bit more e.g. disabling lto etc. CFLAGS_append_mips64 = " -fno-lto"

and also consider little endian

Hi Khem,

I thought of adding '-O0' to CFLAGS because when I was debugging this problem, I found that several 'printf' statements would make errors disappear. I'm not familiar with these options. I just gave a test for '-fno-lto', and it caused the following error.

ERROR: systemd-1_230+gitAUTOINC+3a74d4fc90-r0 do_package: debugedit failed with exit code 1 (cmd was '/buildarea2/chenqi/poky/build-systemd/tmp/sysroots/x86_64-linux/usr/lib/rpm/bin/debugedit' -i -l '/buildarea2/chenqi/poky/build-systemd/tmp/work/mips64-poky-linux/systemd/1_230+gitAUTOINC+3a74d4fc90-r0/debugsources.list' '/buildarea2/chenqi/poky/build-systemd/tmp/work/mips64-poky-linux/systemd/1_230+gitAUTOINC+3a74d4fc90-r0/package/usr/lib/systemd/ptest/tests/test-libsystemd-sym.o'):
/buildarea2/chenqi/poky/build-systemd/tmp/sysroots/x86_64-linux/usr/lib/rpm/bin/debugedit: /buildarea2/chenqi/poky/build-systemd/tmp/work/mips64-poky-linux/systemd/1_230+gitAUTOINC+3a74d4fc90-r0/package/usr/lib/systemd/ptest/tests/test-libsystemd-sym.o: Unhandled relocation 2 in .debug_info section
ERROR: systemd-1_230+gitAUTOINC+3a74d4fc90-r0 do_package: Function failed: split_and_strip_files
ERROR: Logfile of failure stored in: /buildarea2/chenqi/poky/build-systemd/tmp/work/mips64-poky-linux/systemd/1_230+gitAUTOINC+3a74d4fc90-r0/temp/log.do_package.8462
ERROR: Task (/buildarea2/chenqi/poky/meta/recipes-core/systemd/systemd_230.bb:do_package) failed with exit code '1'

Best Regards,
Chen Qi

Quoted 8 lines
Quoted 8 lines

--
1.9.1

--
_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.openembedded.org/mailman/listinfo/openembedded-core

#4 lore raw
Quoted 32 lines · ChenQi
Quoted 29 lines · Khem Raj
Quoted 20 lines · Chen Qi

If we start a systemd based qemumips64 target with 'pam' enabled in DISTRO_FEATURES, we could not login in successfully. After you provide username and password to the login prompt, the login prompt just comes up again. Besides, there are other boot failures.

Append '-O0' flag for mips64 target as a workaround to this problem.

[YOCTO #10250]

---
 meta/recipes-core/systemd/systemd.inc | 1 +
 1 file changed, 1 insertion(+)
meta/recipes-core/systemd/systemd.inc +0 -0
index f800f42..db588e7 100644

meta/recipes-core/systemd/systemd.inc PV = "230+git${SRCPV}" · line 26

Quoted 4 lines
meta/recipes-core/systemd/systemd.inc +1 -0
@@ -23,3 +23,4 @@ PV = "230+git${SRCPV}"
 S = "${WORKDIR}/git"
 
 LDFLAGS_append_libc-uclibc = " -lrt -lssp_nonshared -lssp "
+CFLAGS_append_mips64 = " -O0"

can you instead explore a bit more e.g. disabling lto etc. CFLAGS_append_mips64 = " -fno-lto"

Quoted 6 lines
Quoted 2 lines

and also consider little endian

Hi Khem,

I thought of adding '-O0' to CFLAGS because when I was debugging this problem, I found that several 'printf' statements would make errors disappear. I'm not familiar with these options. I just gave a test for '-fno-lto', and it caused the following error.

O0 will mean bad performance. We should try to narrow it down to a subset of opt passes. Can you try O1 or Os

Quoted 19 lines

ERROR: systemd-1_230+gitAUTOINC+3a74d4fc90-r0 do_package: debugedit failed with exit code 1 (cmd was '/buildarea2/chenqi/poky/build-systemd/tmp/sysroots/x86_64-linux/usr/lib/rpm/bin/debugedit' -i -l '/buildarea2/chenqi/poky/build-systemd/tmp/work/mips64-poky-linux/systemd/1_230+gitAUTOINC+3a74d4fc90-r0/debugsources.list' '/buildarea2/chenqi/poky/build-systemd/tmp/work/mips64-poky-linux/systemd/1_230+gitAUTOINC+3a74d4fc90-r0/package/usr/lib/systemd/ptest/tests/test-libsystemd-sym.o'):
/buildarea2/chenqi/poky/build-systemd/tmp/sysroots/x86_64-linux/usr/lib/rpm/bin/debugedit: /buildarea2/chenqi/poky/build-systemd/tmp/work/mips64-poky-linux/systemd/1_230+gitAUTOINC+3a74d4fc90-r0/package/usr/lib/systemd/ptest/tests/test-libsystemd-sym.o: Unhandled relocation 2 in .debug_info section
ERROR: systemd-1_230+gitAUTOINC+3a74d4fc90-r0 do_package: Function failed: split_and_strip_files
ERROR: Logfile of failure stored in: /buildarea2/chenqi/poky/build-systemd/tmp/work/mips64-poky-linux/systemd/1_230+gitAUTOINC+3a74d4fc90-r0/temp/log.do_package.8462
ERROR: Task (/buildarea2/chenqi/poky/meta/recipes-core/systemd/systemd_230.bb:do_package) failed with exit code '1'

Best Regards,
Chen Qi

Quoted 8 lines
Quoted 8 lines

--
1.9.1

--
_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.openembedded.org/mailman/listinfo/openembedded-core