**** BEGIN LOGGING AT Wed Jan 23 02:59:57 2019 Jan 23 06:38:58 Your device has both Android 7 and 5 available, so that should be possible. Although you'll need to make a port yourself. For more information, take a look at docs.halium.org Jan 23 10:29:03 @Sergobot It turns out that whatever breaks USB Ethernet isn't related to udev rules Jan 23 10:29:12 I tried again, and it actually booted Jan 23 10:29:21 But still no difference in test results Jan 23 10:30:17 The only tests that work are: … - test_vibrator … - test_lights (LED slowly blinks pink) … - test_gps (does something at least) … - test_sensors (enumerates them successfully) Jan 23 10:30:33 All the other bark about various missing .so files Jan 23 10:41:02 Yeah, I think that's the stage I've reached in porting Jan 23 10:41:34 @Sergobot, Is it a good idea to copy-paste the supposed missing files from a stock Nougat LineageOS build? Jan 23 10:41:53 Give it a try :D Jan 23 10:42:57 As in "It's probably gonna work if you do", or as in "It ain't gonna work, but you might want to give it a shot"?🤔 Jan 23 11:01:55 The first one Jan 23 11:02:08 I haven't tried it back then, so it may actually work Jan 23 11:02:55 @WaseemAlkurdi, not a proper fix though Jan 23 11:03:14 what test_hwcomposer is missing? Jan 23 11:03:40 @NotKit Should I run it and post the output? Jan 23 11:05:04 yes, EGL_PlATFORM=hwcomposer test_hwcomposer Jan 23 11:06:13 @WaseemAlkurdi, I had to do it in order to have a working GPS on the oneplus2 … Note about the test_gps: it take time to complete (a lot of time 10-20 minutes) Jan 23 11:08:52 @vince1171, Good to know! … But at least, it didn't segfault Jan 23 11:08:56 So that's something! Jan 23 11:18:45 @NotKit, Is it supposed to take long? Jan 23 11:18:52 It's a blinking cursor Jan 23 11:19:18 Running it with strace produces output Jan 23 11:19:23 So it's probably doing stuff Jan 23 11:19:45 which rootfs do you use? Jan 23 11:19:57 @NotKit, Plasma Mobile Jan 23 11:20:06 Do I switch to Halium reference? Jan 23 11:20:36 could be CAF vs non-CAF issue or due to kwin already running Jan 23 11:21:00 @NotKit, I'm running the non-CAF version Jan 23 11:21:06 Do I try the reference one Jan 23 11:21:13 since it's only one version AFAIK? Jan 23 11:21:48 Their wiki recommends running CAF unless a Nexus device … (and Pixel = Nexus mostly) Jan 23 11:23:38 and your device is? Jan 23 11:23:45 Pixel XL Jan 23 11:24:08 hm, no idea what did Lineage base on for it Jan 23 11:24:33 it could be CAF, but needs to be checked in device tree Jan 23 11:25:04 check for define QTI_BSP or TARGET_USES_QCOM_BSP Jan 23 11:26:00 Yeah, it's CAF Jan 23 11:26:34 @Sergobot, Why did they change? Jan 23 11:26:37 Google Jan 23 11:26:55 Change what? Jan 23 11:27:34 @Sergobot, From being non-CAF for Nexus to being CAF for Pixel Jan 23 11:27:52 Ah, I don't know :) Jan 23 11:29:31 CAF is where Qualcomm publishes optimization patches for Linux Jan 23 11:29:43 For its devices Jan 23 11:30:22 But Google used not to use this ... they probably had a reason for it, right? Jan 23 11:31:33 it is probably not even Google, but what LineageOS build was based on Jan 23 11:31:48 pure AOSP does not have Qualcomm modifications for hwcomposer Jan 23 11:32:05 @NotKit, So that makes it possible that AOSP or stock Pixel isn't CAF-based Jan 23 11:32:15 But LOS and friensds are? Jan 23 11:32:24 yes Jan 23 11:33:25 but for our purposes, assuming it is CAF device is fine (and it is also possible stock Pixel was based on CAF/Qualcomm BSP, since it is not Nexus) Jan 23 11:34:27 I've read on the pmOS wiki that it uses the Nexus Serial debug cable ... so I inferred that it must share some "family blood" with it Jan 23 11:35:34 having Serial debug cable support is cool though Jan 23 11:37:09 @NotKit, Exactly! … But the problem is that it's some odd modified 3.5mm headphone jack to USB cable instead of via standard USB Jan 23 11:38:03 well, should be rather easy to do Jan 23 11:38:45 @NotKit, For somebody with electrician training 😭 Jan 23 11:39:21 nah, just basic soldering skills Jan 23 11:39:32 [Edit] nah, just basic soldering skills and spare parts Jan 23 11:40:35 @NotKit, I guess I might look into it ... … Probably helps us with this, especially if it has serial terminal output Jan 23 11:41:21 for Halium it doesn't matter much unless you plan to bring mainline (but that's pmOS topic) Jan 23 11:41:51 @NotKit, And they didn't go anywhere ... barely anything works Jan 23 11:42:36 But mainline would be uber-cool! Jan 23 11:43:02 Should extend the device's lifespan for several years on Jan 23 11:43:27 I should stop daydreaming😂 Jan 23 11:45:52 @NotKit I'm trying with the CAF Plasma Mobile rootfs Jan 23 11:46:03 It's taking long there too Jan 23 11:46:22 A strace also shows that it's doing something Jan 23 11:46:26 and nothing on screen? Jan 23 11:46:39 Nothing except for the Google boot logo Jan 23 11:46:55 It's all ioctl() and nanosleep() Jan 23 11:47:01 On strace Jan 23 11:47:17 ioctl(3, BINDER_WRITE_READ, 0xffa89770) = 0 … nanosleep({1, 0}, 0xffa898ec) = 0 Jan 23 11:47:26 Repeating ad nauseam Jan 23 11:47:48 Kill test and start it again, and capture output at start only Jan 23 11:47:52 don't wait for it forever Jan 23 11:48:00 @bhushanshah, 'strace' output you mean? Jan 23 11:48:09 Because the regular test does nothing Jan 23 11:48:10 yes Jan 23 11:52:03 https://termbin.com/p7uo Jan 23 11:52:07 There you go Jan 23 11:52:57 Output of: EGL_PlATFORM=hwcomposer strace test_hwcomposer Jan 23 11:53:14 you're trying CAF rootfs? Jan 23 11:55:19 Yep Jan 23 11:55:33 Pixel is not really CAF Jan 23 11:55:46 I also tried the non-CAF version Jan 23 11:55:58 Same result Jan 23 11:56:04 We were just talking about it Jan 23 11:56:30 It's usually non-CAF (Nexus?) but Lineage uses a CAF base (as @NotKit told me) Jan 23 11:57:02 uhm, no? Jan 23 11:57:28 Can you grep for QTI_BSP in your device tree? Jan 23 11:57:33 or QCOM_BSP Jan 23 11:57:44 What file in the tree? Jan 23 11:57:54 all Jan 23 11:58:01 git grep "QTI_BSP" Jan 23 11:58:13 in your device/google/ folder Jan 23 11:58:43 Nothing for QTI_BSP Jan 23 11:58:48 There's TARGET_USES_QCOM_BSP somewhere Jan 23 11:58:58 Two counts in particular Jan 23 11:59:04 @Sergobot, Set to true Jan 23 11:59:10 marlin/BoardConfig.mk:TARGET_USES_QCOM_BSP := true … sailfish/BoardConfig.mk:TARGET_USES_QCOM_BSP := true … marlin/BoardConfig.mk:TARGET_USES_QCOM_BSP := true … sailfish/BoardConfig.mk:TARGET_USES_QCOM_BSP := true Jan 23 11:59:15 Exactly Jan 23 11:59:20 That was a double paste Jan 23 11:59:25 It's only twp counts Jan 23 11:59:28 and your device is marlin right? Jan 23 11:59:31 Yep Jan 23 11:59:37 Pixel XL aka marlin Jan 23 12:00:21 although Jan 23 12:00:28 it is inside another if'def'd Jan 23 12:00:30 https://github.com/LineageOS/android_device_google_marlin/blob/lineage-16.0/marlin/BoardConfig.mk#L102 Jan 23 12:00:37 TARGET_USES_AOSP Jan 23 12:00:42 I wonder if it is set Jan 23 12:01:00 https://github.com/LineageOS/android_device_google_marlin/blob/lineage-16.0/marlin/BoardConfig.mk#L15 Jan 23 12:01:18 since that is ifneq QCOM_BSP is NOT set Jan 23 12:01:21 It is Jan 23 12:01:24 so your device is not CAF Jan 23 12:01:27 common/base.mk:ifneq ($(TARGET_USES_AOSP),true) … marlin/BoardConfig.mk:TARGET_USES_AOSP := true … marlin/BoardConfig.mk:ifneq ($(TARGET_USES_AOSP),true) … power/Android.mk:ifneq ($(TARGET_USES_AOSP),true) … sailfish/BoardConfig.mk:TARGET_USES_AOSP := true … sailfish/BoardConfig.mk:ifneq ($(TARGET_USES_AOSP),true) Jan 23 12:01:46 yes but read what I said ^^^^ Jan 23 12:01:54 it is not ifeq but if*n*eq Jan 23 12:02:02 Oh Jan 23 12:02:44 Android.mk:ifneq ($(filter marlin sailfish, $(TARGET_DEVICE)),) … common/base.mk:ifneq ($(TARGET_USES_AOSP),true) … common/base.mk:#ifeq ($(BOARD_HAVE_BLUETOOTH_BLUEZ),true) … dataservices/rmnetctl/src/Android.mk:ifeq ($(TARGET_COMPILE_WITH_MSM_KERNEL),true) … dataservices/sockev/src/Android.mk:ifeq ($(TARGET_COMPILE_WITH_MSM_ Jan 23 12:02:44 KERNEL),true) … device-common.mk:ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) … device-common.mk:ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) … device-common.mk:ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) … device-common.mk:ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) … device-common.mk:ifneq (,$ Jan 23 12:02:44 (filter user userdebug, $(TARGET_BUILD_VARIANT))) … device-common.mk:ifeq (true,$(SANITIZE_LITE)) … device-common.mk:ifneq (,$(filter userdebug eng, $(TARGET_BUILD_VARIANT))) … Binary file initramfs.gz matches … libandroid/Android.mk:ifeq ($(TARGET_BUILD_PDK),true) … libandroid/Android.mk:ifeq ($(TARGET_BOARD_PLATFORM),msm8996) … marlin/BoardConfig Jan 23 12:02:44 .mk:ifneq ($(TARGET_USES_AOSP),true) … marlin/BoardConfig.mk:ifneq ($(filter marlin marlinf, $(TARGET_PRODUCT)),) … marlin/BoardConfig.mk:ifeq ($(HOST_OS),linux) Jan 23 12:02:50 uhm Jan 23 12:03:01 Please don't paste more then 4 lines directly Jan 23 12:03:16 I just noticed this😅 Jan 23 12:04:42 What do you infer? @bhushanshah Jan 23 12:04:56 It is not CAF Jan 23 12:05:08 So back to the non-CAF rootfs then Jan 23 12:05:20 Do you want me to repeat the same procedure? Jan 23 12:05:25 For the non-CAF rootfs? Jan 23 12:05:32 Yes please Jan 23 12:05:42 @bhushanshah, I've been mistaken for months 😂 Jan 23 12:05:49 that will give more proper (and correct) idea of what is wrong Jan 23 12:06:06 @Sergobot, in fairness Jan 23 12:06:10 docs are confusing Jan 23 12:06:19 or rather mis-leading Jan 23 12:06:25 it tells to grep for thing Jan 23 12:06:35 @Sergobot, A wise person once said that "me no do mistakes, me no learn"😊 Jan 23 12:06:38 But doesn't account of it being in ifeq or ifneq Jan 23 12:06:53 PRs to update it welcome :P Jan 23 12:07:57 @bhushanshah, Haven't noticed ever noticed that. Could you send the link? :) Jan 23 12:08:20 @bhushanshah, [Edit] Haven't ever noticed that. Could you send the link? :) Jan 23 12:09:10 oh wait Jan 23 12:09:21 it is not documented in halium docs but ubports docs Jan 23 12:10:02 uhm Jan 23 12:10:03 o-O Jan 23 12:10:11 I can't find it at all anywhere Jan 23 12:10:17 where did it disappear? O_o Jan 23 12:10:27 Look through your browser history Jan 23 12:10:48 won't really help as it was paragraph note on porting or as such page Jan 23 12:13:15 Try the PDF version of their Wiki Jan 23 12:13:28 https://readthedocs.org/projects/docsubportscom/downloads/pdf/latest/ Jan 23 12:14:41 https://termbin.com/gz3d Jan 23 12:14:48 There's the output you asked for Jan 23 12:15:16 EGL_PlATFORM=hwcomposer strace test_hwcomposer &> /userdata/strace_output_new Jan 23 12:15:42 `access("/vendor/lib/hw/hwcomposer.marlin.so", R_OK) = -1 ELOOP (Too many levels of symbolic links)` Jan 23 12:16:07 @UniversalSuperBox didn't we (or more like you) fix it in halium-boot already? Jan 23 12:16:28 The modified shell script? Jan 23 12:16:58 @Sergobot did a pull request if I remember closely Jan 23 12:17:43 That PR introduced A/B support Jan 23 12:18:01 No tinkering with symlinks that I remember Jan 23 12:18:11 @Sergobot, And the related script? Jan 23 12:18:16 Also for A/B? Jan 23 12:19:34 Are you talking about /var/lib/lxc/android/pre-start.sh? Jan 23 12:19:41 Exactly Jan 23 12:20:11 It's modified by @UniversalSuperBox Jan 23 12:20:28 And the purpose being? A/B support I presume? Jan 23 12:20:42 No, it's for halium-boot to work Jan 23 12:20:46 https://github.com/halium/projectmanagement/issues/40 Jan 23 12:21:15 @Sergobot, Oh ...👍 Jan 23 12:21:32 Is there some sort of "symlink counter" we can possibly increment? Jan 23 12:21:58 Dhyakesh was added by: Dhyakesh Jan 23 12:22:28 no Jan 23 12:27:24 Perhaps hard-link instead of symlinking? Jan 23 12:27:35 But that's too much of a "patchy" job I think Jan 23 12:29:26 BTW, the "too many levels of symlinks" error shows up on almost all tests Jan 23 12:29:41 yes Jan 23 12:30:29 Tried searching for a patch for this ... none turned up Jan 23 12:30:47 There's something in the wiki for hybris-boot Jan 23 12:58:20 @bhushanshah @Sergobot I found something! Jan 23 12:58:35 When a symlink points to itself, this error could occur as a result Jan 23 12:58:53 What if I remove the whole symlink and replace it with the file it references? Jan 23 13:32:45 @bhushanshah, Whose rootfs is this? Jan 23 13:33:12 The link that normally goes `/vendor -> /android/system/vendor` needs to be removed and changed to `/vendor -> /android/vendor` Jan 23 13:35:42 The setup scripts still do `/vendor -> /android/system/vendor` Jan 23 13:36:16 And since we haven't decided if we want to be monolithic or micro in the initramfs it's still in limbo Jan 23 14:35:17 @mariogrip Please, review https://github.com/Halium/android_vendor_cm/pull/4 Jan 23 15:04:48 looks OK to me Jan 23 15:05:00 [Edit] looks ok to me Jan 23 18:37:07 Daniel Btw, it would be helpful if you could test the new rootfs image. I just tried it on my phone (which uses the caf platform though), and it doesn't work. Since I never successfully tested it on my device before, I'm trying to find out whether I broke something. … If you do, you could make a backup of your current rootfs.img Jan 23 18:37:07 so you don't loose your progress. … Do you use the xserver-xorg-video-hwcomposer package from the repo or your own build btw? Jan 23 18:40:59 @JBBgameich, What exactly is broken for your device? Jan 23 18:52:39 @bhushanshah, Kwin doesn't launch successfully... … I have a theory though. The build is quite old (few weeks). Back then my ccache setup didn't distinguish between caf and generic builds. So its likely the caf build is actually not really a caf build. Jan 23 18:55:36 if this is really the case, it will be fixed once i update to kwin 5.14.5 and kwin is rebuilt. Jan 23 18:55:52 Ah Jan 23 18:56:54 I just need to find our whether this is really the problem, thats why I'm asking :) Jan 23 18:58:12 (The folder structure on the server changed a bit, halium rootfs are now in https://archive.kaidan.im/debian-pm/images/halium/plasma-mobile/) Jan 23 20:05:32 @UniversalSuperBox Thanks a lot! Jan 23 20:05:46 For what? Jan 23 20:05:49 Your solution inspired me to fix it Jan 23 20:05:54 The symlink problem Jan 23 20:06:07 Oh, good! Jan 23 20:06:07 The symlink was correct Jan 23 20:06:41 The actual problem was that /android/vendor led to nowhere Jan 23 20:06:50 Because this is a Treble device Jan 23 20:06:58 and we have the separate /vendor partition Jan 23 20:07:00 That should be fixed in halium-boot though Jan 23 20:07:14 It should symlink `/android/vendor -> /android/system/vendor` if `/android/vendor` doesn't exist Jan 23 20:07:24 Or did `pre-start.sh` do that Jan 23 20:07:38 Exactly ... except that /android/system/* doesn't exist Jan 23 20:07:43 ohhhhhhh Jan 23 20:08:12 So I simply mounted /dev/sda31 (our vendor partition) as /vendor Jan 23 20:08:35 I'm now getting errors with test_hwcomposer Jan 23 20:08:42 root@localhost:~# EGL_PLATFORM=hwcomposer test_hwcomposer … cannot locate symbol "atrace_end_body" referenced by "/vendor/lib/hw/gralloc.msm8996.so"... … test_hwcomposer: test_hwcomposer.cpp:171: int main(int, char**): Assertion `err == 0' failed. … Aborted Jan 23 20:08:46 This in particular Jan 23 20:11:22 Any pointers? @UniversalSuperBox Jan 23 20:11:42 I have not seen that error in my life Jan 23 20:12:20 Oh ... 😢 Jan 23 20:12:43 Running the other tests produces similar errors as well Jan 23 20:12:58 Different libraries, different symbols, but still missing Jan 23 21:42:22 @WaseemAlkurdi, Are you trying halium rootfs? Caf or not? Jan 23 22:20:28 @JBBgameich, Sure, I‘ll give it a try tomorrow after work! Jan 23 22:33:21 @Daniel, Thank you! Jan 23 22:57:24 @Mattia990, Both Jan 23 22:57:32 @Mattia990 I tried both Jan 23 23:34:57 hi..just wondering...it is easy / hard to make halium / sailfish work for an lg V10 phone? Jan 24 00:36:41 @linuxguy1, It depends on if you have device trees and kernel source, preferably los, and the easy thing is booting it up, the hard is adapting hardware **** ENDING LOGGING AT Thu Jan 24 02:59:56 2019