| Mister_Magister | it might not be merged but i hope talks start | 00:00 |
|---|---|---|
| Mister_Magister | i'm very proud of myself for implementing those gestures :3 | 00:00 |
| Mister_Magister | okay now for a tricky question, how do i make it so that sensorfw from my vendor is pulled instead of jolla's | 00:09 |
| Mister_Magister | ig all I can do is to stay version in front of it i guess | 00:09 |
| nightishaman | okay, strace has executed | 00:15 |
| nightishaman | lets look at it | 00:15 |
| nightishaman | mal: it mounts twice, first it mounts /linkerconfig to a tmpfs, then it mounts /linkerconfig/default to /linkerconfig | 00:18 |
| nightishaman | according to the strace | 00:18 |
| Mister_Magister | mal: do you mind explaining to me, why sensorfw package, which is version 0.14.4, in jolla repos is 0.15.0-1.14.1.jolla? Where the hell did 0.15.0 come from? | 00:18 |
| Mister_Magister | it'sa freaking tag | 00:19 |
| Mister_Magister | tag not matching a version should be criminal offence | 00:20 |
| Mister_Magister | pushed my tag 1.0 so that it's always above jolla's no matter what | 00:22 |
| mal | Mister_Magister: someone forgot to update the version | 00:31 |
| Mister_Magister | :) | 00:31 |
| Mister_Magister | lemme make a PR i'm sure it will be merged in timely fasion :D | 00:32 |
| nightishaman | builtins.cpp:1227 | 00:32 |
| mal | but if you build that on obs it should be using the tag+something | 00:32 |
| mal | Mister_Magister: PR for what? | 00:32 |
| Mister_Magister | for version bump :D | 00:32 |
| mal | nah | 00:32 |
| Mister_Magister | yeah i realised that it was tag causing it, hence i tagged my stuff 1.0 so that it's picked over jolla's | 00:32 |
| Mister_Magister | mal: β¦that was a joke, with the version bump | 00:33 |
| mal | Mister_Magister: so you have only built it locally? obs should be using tag not spec version | 00:33 |
| Mister_Magister | mal: yes it is using tag | 00:33 |
| Mister_Magister | I just didn't know that 0.15.0 is using tag, now that I've realised it, i've tagged my changes with 1.0 so that my packages will be picked over packages from jolla repo | 00:34 |
| mal | but even without custom tag it would be newer than official version afaik | 00:34 |
| Mister_Magister | no without tag it would be 0.14.4 | 00:34 |
| Mister_Magister | and jolla is using tag 0.15.0 | 00:34 |
| mal | are you sure? | 00:34 |
| mal | on obs that is | 00:34 |
| Mister_Magister | yes thats why i had this issue | 00:34 |
| Mister_Magister | without tag, the version in .spec is 0.14.4 and that's what OBS will use | 00:35 |
| nightishaman | mal: i found it | 00:35 |
| Mister_Magister | you have to use tag 0.15.0 for obs to set version to 0.15.0 | 00:35 |
| mal | obs should be taking tag always | 00:35 |
| Mister_Magister | mal: yes, unless you don't give it a tag | 00:35 |
| nightishaman | init.rc calls enter_default_ns on line 748, which mounts /linkerconfig/default on /linkerconfig | 00:35 |
| Mister_Magister | if you pull from master, HEAD it won't use tag | 00:35 |
| Mister_Magister | it will use .spec version | 00:36 |
| Mister_Magister | because there's no tag provided | 00:36 |
| mal | Mister_Magister: why would you have a fork of sensorfw without all the tags? | 00:36 |
| mal | that makes no sense at all | 00:36 |
| Mister_Magister | mal: you're missing the point | 00:36 |
| Mister_Magister | it doesn't matter what the fork has | 00:36 |
| mal | you are missing the point | 00:36 |
| Mister_Magister | if in tar_git, you supply branch master, and revision HEAD, it will NOT magically change the version to latest tag | 00:37 |
| Mister_Magister | you have to specify tag in revision for it to change version to the tag version | 00:37 |
| mal | obs does all kinds of magic | 00:37 |
| Mister_Magister | i'm telling you how it works | 00:37 |
| Mister_Magister | because i just had this issue | 00:37 |
| mal | and when you did the test you had all of the tags in the fork? | 00:37 |
| Mister_Magister | okay the fork has no tags, i guess it's github's default behaviour | 00:38 |
| mal | forks always have the tags from when you forked it | 00:38 |
| Mister_Magister | nope | 00:38 |
| Mister_Magister | you want me to prove it? | 00:39 |
| Mister_Magister | it could be because of the "Copy the master branch only" that's selected by default | 00:39 |
| Mister_Magister | https://github.com/Michal-Szczepaniak/sensorfw fresh fork, do you see tags | 00:40 |
| mal | wtf, github broke it then recently | 00:40 |
| Mister_Magister | glad we're on the same page | 00:40 |
| Mister_Magister | also yes you're right obs will pull latest tag | 00:40 |
| Mister_Magister | I was wrong | 00:41 |
| nightishaman | mal: So, I figured out why strace shows a two mounts on linkerconfig. The function MountExtraFilesystems mounts linkerconfig as tmpfs again, then later enter_default_ns mounts /linkerconfig/default as /linkerconfig | 00:41 |
| Mister_Magister | mal: also yes, i was correct, it's the default option "Copy the master branch only" that removes tags | 00:42 |
| Mister_Magister | you have to do full fork for tags | 00:42 |
| nightishaman | Mister_Magister: thats why i only do full forks | 00:42 |
| mal | Mister_Magister: so stupid to not have tags of master branch in there, that makes no sense | 00:42 |
| Mister_Magister | well that's microsoft for you | 00:42 |
| Mister_Magister | they haven't made single reasonable decision in years now | 00:43 |
| mal | Mister_Magister: why wouldn't you trust me earlier when I said how obs works, I have used it so much that I know what it does and doesn't do | 00:43 |
| Mister_Magister | yeah you're right, my bad | 00:43 |
| Mister_Magister | sorry | 00:43 |
| mal | nightishaman: is MountExtraFilesystems always run? | 00:45 |
| nightishaman | mal: yes | 00:46 |
| mal | nightishaman: so which call breaks it? | 00:47 |
| nightishaman | the builtin enter_default_ns | 00:47 |
| nightishaman | it gets called on post-fs-data by init.rc and causes /linkerconfig/default to be mounted on top of /linkerconfig | 00:47 |
| mal | so the linkerconfig/default is not ok? | 00:47 |
| nightishaman | yeah | 00:47 |
| nightishaman | but we might want to disable MountExtraFilesystems too because mounting twice is redundant | 00:48 |
| nightishaman | I can make a patch ready and start a PR | 00:48 |
| mal | just wondering why my a16 device doesn't have that issue | 00:49 |
| nightishaman | No idea, but the source code confirms it | 00:49 |
| T42 | <b100dian> mal: is pulseaudio at 17.0 in latest ? | 00:51 |
| T42 | <b100dian> (sorry I don't know who else to ping) | 00:51 |
| mal | @b100dian pa 17 is in sfos 5.1, not in 5.0 | 00:52 |
| mal | on obs latest is still 5.0 | 00:53 |
| T42 | <b100dian> that answers my question. So I need sailfishos:5.1 on devel | 00:53 |
| mal | nightishaman: on my device if I unmount /linkerconfig then /linkerconfig/default has ok content | 00:54 |
| nightishaman | mal: How can I test that on mine? | 00:55 |
| mal | I just did umount /linkerconfig and then checked what is under /linkerconfig | 00:55 |
| Mister_Magister | mal: sensorfwd has -c=/etc/sensorfw/primaryuse.conf does that mean i have to override the primaryuse.conf in sparse? it won't load other configs? | 00:56 |
| nightishaman | ok im gonna check by unmasking droid-hal-init and expand my test script | 00:56 |
| mal | nightishaman: what happens if you just comment out that enter_default_mount_ns from /usr/libexec/droid-hybris/system/etc/init/hw/init.rc | 00:57 |
| nightishaman | if i do umount then i have ok content in /linkerconfig | 00:58 |
| nightishaman | but not in /linkerconfig/default | 00:58 |
| nightishaman | does your device somehow copy stuff to /linkerconfig/default? | 00:58 |
| mal | maybe you have multiple mount layers, umount second time | 00:59 |
| mal | but maybe test that commenting first in init.rc to see what happens | 01:00 |
| mal | Mister_Magister: droid-hal-configs submodule has the default primaryuse.conf, you can override in device config sparse | 01:02 |
| Mister_Magister | well that wasn't my question but that's what I did | 01:02 |
| nightishaman | commenting out enter_default_mount_ns causes it to keep the ld.config.txt | 01:02 |
| Mister_Magister | i was just asking if it can load other configs in that directory so that I don't have to override it | 01:03 |
| mal | nightishaman: are android side processes starting better now? | 01:03 |
| Mister_Magister | who the heck is hogging all the resources with wordle app xdd | 01:03 |
| nightishaman | mal: still having this: 05-31 01:05:17.547 6042 6042 F linker : CANNOT LINK EXECUTABLE "/system/bin/odsign": library "libstatspull.so" not found: needed by main executable | 01:05 |
| nightishaman | and this: droid-hal-init: Control message: Could not find 'aidl/android.frameworks.stats.IStats/default' for ctl.interface_start from pid: 2504 (/system/bin/servicemanager) | 01:05 |
| nightishaman | libstatspull.so is only found in an apex | 01:07 |
| mal | those don't seem very critical processes | 01:08 |
| mal | probably | 01:08 |
| nightishaman | mal: well according to google they are important for ART | 01:10 |
| mal | Mister_Magister: there is a very odd design in sensorfw https://github.com/sailfishos/sensorfw/blob/b62d0e591d736c904128fcfc8476f22cfdbe53b9/core/config.cpp#L63 | 01:10 |
| mal | nightishaman: so not for sfos | 01:10 |
| nightishaman | init.rc waits for it tho | 01:10 |
| mal | hmm where? | 01:11 |
| nightishaman | line 1109 | 01:11 |
| mal | probably different lines in my file | 01:12 |
| nightishaman | then do grep -rn "odsign" | 01:12 |
| mal | comment it out also | 01:14 |
| mal | I assume you mean wait_for_prop odsign.key.done 1 | 01:15 |
| nightishaman | yes | 01:15 |
| nightishaman | and odsign.verification.done in zygote start | 01:15 |
| mal | nightishaman: no | 01:15 |
| nightishaman | what | 01:15 |
| mal | zygote is not started in sfos | 01:15 |
| nightishaman | well i commented it out anyway for testing | 01:16 |
| mal | I meant the other thing | 01:16 |
| nightishaman | yeah i commented out start odsign and odsign.key.done | 01:16 |
| mal | in "on post-fs-data" | 01:16 |
| nightishaman | but if on zygote-start is never run then statsd wont be run and it will keep filling my log with IStats not found | 01:17 |
| Mister_Magister | mal: I seem to be running into race condition where the gesture sensors are not yet available when lipstick starts⦠do you have better idea than StartPre: sleep 1000000000000 | 01:18 |
| mal | nightishaman: unless something is wrong zygote should not be starting | 01:18 |
| Mister_Magister | I⦠could loop the app and wait check if plugin is available every second | 01:18 |
| mal | how are the sensors not available? | 01:19 |
| nightishaman | mal: How do I stop these from getting spammed every second then? droid-hal-init: Control message: Could not find 'aidl/android.frameworks.stats.IStats/default' for ctl.interface_start from pid: 2504 (/system/bin/servicemanager) | 01:19 |
| nightishaman | since statsd seems to be started in on zygote-start | 01:19 |
| Mister_Magister | they just aren't sensorfwd says HYBRIS CTL invalid sensor type: 65540 | 01:19 |
| mal | do you see anything about zygote in logs then? | 01:19 |
| Mister_Magister | and even if i restart my daemon sensorfwd won't give it the sensor anymore | 01:20 |
| Mister_Magister | but if i restart sensorfwd it should work fine | 01:20 |
| mal | so sensorfw is started too early | 01:20 |
| Mister_Magister | i would think so yes | 01:20 |
| Mister_Magister | i wonder if there's something i can condition it on instead of just adding random delay | 01:21 |
| mal | maybe some android service activates those? | 01:22 |
| T42 | <b100dian> Doesn't work (re @b100dian: that answers my ques...) | 01:25 |
| T42 | <b100dian> Anyone built 5.1 on obs / devel | 01:26 |
| mal | which device? | 01:26 |
| T42 | <b100dian> https://build.sailfishos.org/project/show/nemo:devel:hw:xiaomi:tucana | 01:26 |
| T42 | <b100dian> But if I had an example of another device on 5.1 with devel I would probably figure it out | 01:27 |
| mal | how about now | 01:27 |
| T42 | <b100dian> hmm :) what did you change mal? Teach the man to fish | 01:28 |
| mal | the order of repos is important in meta | 01:28 |
| mal | https://build.sailfishos.org/project/meta/nemo:devel:hw:xiaomi:tucana | 01:28 |
| T42 | <b100dian> oh, didn't expect that | 01:29 |
| T42 | <b100dian> thanks! | 01:29 |
| mal | the nemo:devel:hw:common is still 5.0 so you had it at the bottom which meant it was used for base stuff | 01:29 |
| mal | which of course is not ok | 01:30 |
| nightishaman | mal: https://pastebin.com/6n2s790f new stuff crashing | 01:30 |
| mal | usb service is useless | 01:30 |
| mal | can be disabled | 01:31 |
| mal | example of a service being disabled https://github.com/mlehtima/droid-config-fp4/blob/master/sparse/usr/libexec/droid-hybris/system/etc/init/disabled_services_device.rc | 01:32 |
| mal | you have to check the .rc files for the service name etc to use | 01:32 |
| nightishaman | yeah but the others are part of the camera | 01:33 |
| nightishaman | all the so files they search are in apexes | 01:33 |
| mal | but now linkerconfig should be ok? | 01:34 |
| mal | so why are those still failing | 01:34 |
| nightishaman | well linkerconfig doesnt have those pathes in it | 01:34 |
| mal | unless there is something wrong in linkerconfig still | 01:35 |
| mal | how different is the linkerconfig if you create it using the linkerconfig in /apex, I remember there might be one there? | 01:36 |
| mal | Mister_Magister: that sensorfw PR is a bit of a mess, why 7 commits? | 01:37 |
| Mister_Magister | why not? i made commits as I went | 01:37 |
| Mister_Magister | you can always squash it | 01:37 |
| mal | 3 commits with same commit message? | 01:37 |
| Mister_Magister | I'm lazy xd | 01:38 |
| mal | some are removing things you added in another commit, that's not ok | 01:38 |
| Mister_Magister | you can always squash it xd but if it is a problem i'll squash it myself | 01:39 |
| nightishaman | mal: when i run linkerconfig right now after starting droid-hal-init, it gives a more expanded linkerconfig which also include libstatspull.so | 01:39 |
| nightishaman | however the camera hal is still not included in that linkerconfig | 01:40 |
| Mister_Magister | here you go, squashed | 01:40 |
| nightishaman | using the one in /apex/com.android.runtime makes no difference | 01:40 |
| mal | ok, something odd still with that | 01:40 |
| T42 | <b100dian> (yee I have sound back on jb2q) | 01:40 |
| Mister_Magister | I've added delay 100 to sensorfw start xd that just made it not start, but 10s was not enough :/ | 01:44 |
| Mister_Magister | okay delay of 20s did the trick | 01:49 |
| nightishaman | mal: as far as i understand, apexd should call android init to tell it to add the apexes to linkerconfig, but for some reason thats not happening | 01:51 |
| nightishaman | https://pastebin.com/28eP5Fhd | 01:51 |
| Mister_Magister | mal: I grepped for chopchop and camera gesture and both are only found in /vendor/firmware_mnt/image/adsp.b15 but no clue which service would provide that | 01:52 |
| nightishaman | mal: I'm beginning to think there must be something that executes linkerconfig in /linkerconfig/default that doesnt happen on my device and thats why its ok on urs | 01:56 |
| mal | nightishaman: might be, need to check how my device works | 01:58 |
| nightishaman | mal: Found it, perform_apex_config is run again in on post-fs-data | 02:09 |
| Mister_Magister | mal: so I added bash script that does ps aux | grep sensor > /home/sensors to list all android sensor services, and ran it as ExecStartPre of sensorfwd and you wouldn't imagine but none of android sensor services are running | 02:11 |
| mal | Mister_Magister: not suprising since sensorfw is supposed to wait for the services to appear in the main process | 02:12 |
| Mister_Magister | then if it waits for them, why does it still lack my gestures? | 02:12 |
| nightishaman | mal: I have no idea what happened, but for some reason, the ld config is now filled properly | 02:14 |
| nightishaman | im gonna go into recovery and check out what i changed using diff | 02:14 |
| nightishaman | mal: Can you check on your device whether the message with Generated linkerconfig to /linkerconfig shows up twice? | 02:21 |
| nightishaman | it did work now because i moved my script to the second execution of perform_apex_config and my script wrote the proper ld.config.txt | 02:29 |
| nightishaman | the question is now, why does the second invocation fail | 02:30 |
| Mister_Magister | mal: I've tried to make sesnorfw wait for all the running executables with sensor in the name and no dice | 02:34 |
| Mister_Magister | also why in the world are you not asleep yet | 02:35 |
| nightishaman | my guess is that the switch from bootstrap to default namespace doesnt work for some reason | 02:44 |
| Mister_Magister | i guess sleep 20 is the answer | 02:45 |
| T42 | <the_hiktor> @elros34 i enabled selinux π | 04:21 |
| T42 | <the_hiktor> journal droid-hal-init and some more are dead | 04:23 |
| T42 | <the_hiktor> https://paste.opensuse.org/pastes/bd9b3053667a | 04:41 |
| T42 | <the_hiktor> dmesg | 04:41 |
| T42 | <the_hiktor> selinux status in case you interested https://paste.opensuse.org/pastes/7768b34eff14 | 04:43 |
| T42 | <elros34> so selinux ok, what would happen (sestatus -v) if you add handle-unknown=allow to /etc/selinux/semanage.conf and run semodule -B according to | 07:53 |
| T42 | <elros34> https://documentation.sas.com/doc/en/dplyboss0phy0lax/10.1/n1uksz2v8f2jktn1cd40pkh5cyxn.htm | 07:53 |
| T42 | <edp_17> @Mister_Magister, Hi. here is the output from console when I ran that sensorfw command: https://paste.ubuntu.com/p/nNxb7hcBJj/ | 09:39 |
| Mister_Magister | @edp_17 you have same gestures with same IDs so if you want you can use my software to enable them! | 09:42 |
| Mister_Magister | as expected though :P | 09:42 |
| Mister_Magister | you just need to build sensorfw on my fork like here https://build.sailfishos.org/package/show/nemo:testing:hw:motorola:miami/sensorfw-qt5 https://build.sailfishos.org/package/show/nemo:testing:hw:motorola:victara/sensorfw-qt5-hybris and you also need the daemon/settings page to talk to sensorfw and here it is https://build.sailfishos.org/package/show/nemo:testing:hw:motorola:victara/motorola-gestures | 09:43 |
| Mister_Magister | and you'll have chop chop, camera gesture, and lift to view | 09:43 |
| Mister_Magister | I'm quite confident it will work on all motorolas since 2014 xd | 09:44 |
| T42 | <edp_17> What is chop chop and camera gesture? | 09:45 |
| Mister_Magister | @edp_17 you surely used motorola on stock before� | 09:45 |
| Mister_Magister | https://www.youtube.com/watch?v=ucQBVQoKltQ | 09:46 |
| Mister_Magister | those are like the special something motorola has been known for since forever xd | 09:47 |
| Mister_Magister | which is why it works on all motorolas, because they've been porting same code over and over since 2014 xd | 09:47 |
| T42 | <edp_17> No, I never used any of these. I barely used Android on it as I started porting SOFS immediately when I received it. | 09:48 |
| Mister_Magister | no i get the sentiment :D | 09:48 |
| Mister_Magister | now you know :D | 09:48 |
| T42 | <edp_17> Yeah, thanks :D | 09:48 |
| Mister_Magister | I do the same i just used stock in past | 09:48 |
| Mister_Magister | android dev told me those are exposed as sensors and after making it work on edge 30 neo apparently it also worked on my 2014 x2 so if both edges of the spectrum are working, everything in between should too | 09:49 |
| T42 | <edp_17> So, will both of these gestures be available on SFOS with your custom sensorfw build? | 09:49 |
| Mister_Magister | yeap | 09:49 |
| Mister_Magister | + lift to view | 09:49 |
| Mister_Magister | it's sensorfw + my daemon cause nothing will read those except my daemon | 09:50 |
| T42 | <edp_17> I'll try to remember to buld it when I start building 5.1. Then, I'll test and report. | 09:50 |
| Mister_Magister | yessir | 09:51 |
| T42 | <edp_17> I've added a note to my instructions about it, so I won't forget. :) However, I don't know when I will build 5.1 for my devices. So, it will take some time. | 09:53 |
| Mister_Magister | now I just have to figure out how to make sensorfw wait for those gesture sensors :/ | 10:54 |
| Mister_Magister | mal: Turns out you don't have to override primaryuse at all, it loads primaryuse.conf and also sensord.conf.d | 11:18 |
| Mister_Magister | oh @edp_17 that reminds me you need to add 3 lines to sensord config, i'll give you sample in a second | 11:18 |
| Mister_Magister | https://github.com/VerdandiTeam/droid-config-miami/tree/master/sparse/etc/sensorfw/sensord.conf.d here you go | 11:19 |
| Mister_Magister | now i need to figure out how to make sensorfwd wait for my sensors | 11:21 |
| Mister_Magister | Oh?! apparently it's using aidl not hidl (probably because it needs the separate branch) | 11:29 |
| Mister_Magister | I wonder if it would be possible to reload list of available sensors during plugin availability check | 11:39 |
| Mister_Magister | hmm getSensorList is protected | 11:47 |
| mal | @the_hiktor are you really sure the selinux configs in /etc are correct? | 12:06 |
| T42 | <the_hiktor> @elros ok so what this do exactly that thing you sent i tried it but i dont get it what it does it just made my device irresponsive i cant input anything after connecting in telnet in fact the whole terminal freezes | 12:35 |
| T42 | <the_hiktor> mal : never been unsure like that in my whole life π₯² | 12:36 |
| T42 | <the_hiktor> you can look at them yourself https://github.com/GloboPatro/droid-config-surya | 12:38 |
| Mister_Magister | mal: would you be willing to accept this PR https://github.com/VerdandiTeam/sensorfw/commit/e1d584ed94ac231bcc66339c53b4fd3f4b44c4a8 | 12:42 |
| Mister_Magister | it re-fetches sensors list whenever sensor is requested and completely solves my issue | 12:43 |
| Mister_Magister | tho i guess in its current state it leaks a bit of memory xd | 12:43 |
| mal | @the_hiktor which android base? | 12:50 |
| T42 | <elros34> @the_hiktor shame so it's not tha easy. It was supposed to change that `deny_unknown` status but I am not sure this is the root of issue | 12:51 |
| mal | Mister_Magister: well first of all that causes terrible memory leak | 12:52 |
| Mister_Magister | :))))) | 12:52 |
| Mister_Magister | not that terrible xd | 12:52 |
| Mister_Magister | but i did mention it | 12:52 |
| mal | https://github.com/VerdandiTeam/sensorfw/blob/master/core/hybrisadaptor.cpp#L744 | 12:52 |
| Mister_Magister | yes i mentioned it already :) | 12:53 |
| mal | and probably more in strings | 12:53 |
| Mister_Magister | [14:43] <Mister_Magister> tho i guess in its current state it leaks a bit of memory xd | 12:53 |
| Mister_Magister | I'm asking more about the concept | 12:53 |
| mal | need to think a bit | 12:54 |
| Mister_Magister | oki doki meanwhile i'll yeet the leak | 12:54 |
| T42 | <the_hiktor> mal: 11 | 12:54 |
| T42 | <the_hiktor> @elros34 so my whole problem is because of selinux ? | 12:55 |
| Mister_Magister | mal: poof, no more leak https://github.com/VerdandiTeam/sensorfw/commit/759d962490079849eedcf4d041e3762fed875019 | 12:56 |
| Mister_Magister | copied it from destructor | 12:56 |
| mal | @the_hiktor you are missing "%define android_version_major 11" from droid-config spec file at least | 12:56 |
| T42 | <elros34> @the_hiktor depends on what do you mean by 'whole'. Clearly selinux breaks journal | 12:56 |
| mal | but that missing thing from spec shouldn't affect selinux | 12:56 |
| Mister_Magister | though this initManager is sus | 12:57 |
| T42 | <the_hiktor> mal : i didnt update the repo you can see last edit was last monthπ | 12:57 |
| T42 | <the_hiktor> but im aware o that | 12:57 |
| T42 | <the_hiktor> of | 12:57 |
| mal | ok | 12:57 |
| T42 | <elros34> please update then. It's 1 minute job. There is no point to waste time on fixed issues | 12:58 |
| T42 | <the_hiktor> ik im lazy af π | 12:58 |
| mal | which kernel version does the device use? | 13:02 |
| T42 | <the_hiktor> 4.14 | 13:02 |
| T42 | <the_hiktor> @elros34 ok done | 13:09 |
| T42 | <the_hiktor> any ideas why this happening on what can i do | 13:10 |
| T42 | <the_hiktor> or | 13:10 |
| T42 | <elros34> maybe mal will know. Are your kernel sources up-to-date too | 13:11 |
| mal | @the_hiktor the semanage.conf change didn't help? | 13:11 |
| T42 | <the_hiktor> @elros34 yeah i took latest abandoned sources π | 13:12 |
| T42 | <the_hiktor> cuz this device is on another level rn | 13:12 |
| T42 | <the_hiktor> it has got los 23 | 13:12 |
| T42 | <elros34> but github repo is with all your changes right? | 13:12 |
| mal | wait, CONFIG_SECURITY_SELINUX_BOOTPARAM_VALUE=0 in defconfig? | 13:14 |
| mal | is that really still there? | 13:14 |
| T42 | <the_hiktor> you look in my repo ? | 13:14 |
| mal | yes | 13:14 |
| T42 | <the_hiktor> i didnt upload shit reltaed to kernel yet | 13:14 |
| T42 | <the_hiktor> ok ok yell at me people | 13:15 |
| mal | https://github.com/GloboPatro/android_kernel_xiaomi_surya/blob/hybris-18.1/arch/arm64/configs/surya_defconfig#L775 | 13:15 |
| T42 | <the_hiktor> i didn't push anything related to the kernel on my repo yet | 13:16 |
| T42 | <the_hiktor> wait ill show you me defconfig | 13:16 |
| T42 | <the_hiktor> https://paste.opensuse.org/pastes/6fbcaf462f0c | 13:20 |
| T42 | <the_hiktor> its messy in there but everything i edited is in bottom iirc | 13:21 |
| mal | still the question, did /etc/selinux/semanage.conf handle-unknown=allow change anything? | 13:22 |
| T42 | <the_hiktor> oh i forgot about this msg | 13:23 |
| T42 | <the_hiktor> wait lemme try | 13:23 |
| mal | can you show you kernel commandline? | 13:25 |
| T42 | <the_hiktor> about the semanage.conf no it didnt do anything | 13:27 |
| T42 | <the_hiktor> kernel commandline like you wanna see boardconfig.mk ?? | 13:28 |
| mal | preferrably from device to show all of it | 13:29 |
| T42 | <the_hiktor> is it ok from recovery ? | 13:35 |
| mal | maybe | 13:35 |
| T42 | <the_hiktor> and to be sure is it in /proc/cmdline ? | 13:36 |
| mal | yes | 13:36 |
| mal | although it depends if the recovery and boot image can different values embedded in them | 13:36 |
| T42 | <the_hiktor> ok ill send it from recovery then ill try to undo what i did in semanage.conf to get it via telnet | 13:37 |
| T42 | <the_hiktor> https://paste.opensuse.org/pastes/44963b9f3c10 | 13:38 |
| T42 | <the_hiktor> https://paste.opensuse.org/pastes/8f82be60fe37 | 13:49 |
| mal | just mentioing that sestatus -v looks the same on my working device | 13:49 |
| T42 | <the_hiktor> i kept handle-unknown=allow in semanage.conf | 13:50 |
| mal | is that second one from where? | 13:50 |
| T42 | <the_hiktor> from device via telnet | 13:51 |
| mal | could you try adding androidboot.selinux=permissive to kernel commandline via boardconfig | 13:51 |
| T42 | <the_hiktor> device was changing mac addres whenever i try to connect to it | 13:51 |
| T42 | <the_hiktor> but nvm | 13:51 |
| T42 | <the_hiktor> ok wait | 13:51 |
| T42 | <elros34> maybe remove audit=0 for now | 13:52 |
| mal | audio=0 is something we usually want, to prevent huge amounts of log spam | 13:52 |
| T42 | <the_hiktor> i remember selinux was permissive | 13:52 |
| mal | the cmdline you showed didn't have that | 13:53 |
| mal | anyway worth a try | 13:53 |
| T42 | <the_hiktor> sestatus shows that π«€ | 13:54 |
| mal | hmm | 13:55 |
| T42 | <securebootoff> rinigus: why do the nagara build instructions mention uploading to obs? no way to do a local build? thinking of doing bringup for asahi platform but this stuff annoys me :( | 15:07 |
| rinigus | @securebootoff: I am sure you can do local build. I find OBS is just faster and easier to do. ... and in the end you would want to move to OBS anyway. so, I try to get OBS working as soon as I can to avoid all this local builds | 15:09 |
| T42 | <securebootoff> thanks for answering :) the one thing that aosp does really well is the build system, sailfish always makes my head go numb after a while. ig i have to suffer through it | 15:10 |
| rinigus | are you planning to base it on aosp or los? | 15:11 |
| T42 | <securebootoff> sony did not publish aosp for asahi | 15:11 |
| rinigus | I see. good luck! I hope you can reuse much from nagara | 15:13 |
| T42 | <securebootoff> thanks a ton :) need sailfish to finish the trinity, already brought up lineage, postmarket on mainline, now only sailfish is left | 15:13 |
| rinigus | good choice - leaving the best for the last | 15:15 |
| T42 | <securebootoff> hehe | 15:17 |
| T42 | <elros34> @the_hiktor can you besides previous ideas remove also CONFIG_SECURITY_YAMA you have added and get full dmesg? I wonder whether you could copy that selinux policy from different device but maybe it needs to be with similar kernel | 15:18 |
| T42 | <b100dian> mal: I don't suppose the qt5-qpa-hwcomposer 5.6.2.27 works on older devices? (lineage 17.1) https://pastebin.ubuntu.com/p/hgXZjt3pJ9/ | 15:55 |
| mal | @b100dian if you have latest libhybris hwc compat module (obviously only for devices which actually need it) | 16:00 |
| mal | hwc compat module is built for android 8 and newer | 16:01 |
| T42 | <b100dian> I think I have one but definitely does not have that graphicbuffer constructor, that's why I assume its' crashing | 16:01 |
| T42 | <b100dian> So, just building hybris-hal then build_helpers.sh -d did not get me in the desired state. It seems that I have a stale libhwc2_compat_layer | 16:03 |
| mal | @b100dian check the libhybris version you have in android side build, verify that submodule was updated also | 16:04 |
| T42 | <b100dian> tucana needed not the libui_compat_layer and now I find that it does not compile because there is a layersCount parameter which has gone missing nowadays | 16:04 |
| T42 | <b100dian> oh, might be a skipped submodule update? That should be good | 16:04 |
| mal | @b100dian what is that layersCount issue? | 16:04 |
| mal | which android base? | 16:05 |
| mal | libui_compat_layer is for android 10 and newer | 16:06 |
| T42 | <b100dian> Yes, android 10. Sorry for jumping to debugging, the submodule was not updated π€¦ | 16:07 |
| mal | @b100dian the usual issue then :) | 16:08 |
| T42 | <b100dian> Do I need libui_compat_layer for the qpa change? I didn't before | 16:08 |
| mal | can you explain the issue you have with libui_compat_layer? and no, it has nothing to do with the hwc requirement | 16:09 |
| T42 | <b100dian> just noticing in the journal that lipstick look it up | 16:10 |
| mal | don't think about it now, fix hwc compat first | 16:10 |
| T42 | <the_hiktor> @elros34 similar kernel like from the same device or same kernel version from another device ? | 16:11 |
| mal | @the_hiktor just to be sure, you copied selinux files from the lineage /vendor or whatever place you had those | 16:12 |
| mal | ? | 16:12 |
| T42 | <b100dian> mal: worked without issues after submodule update. Also seems to have added smoothness, that qpa 5.6.2.27 | 16:57 |
| mal | @b100dian yes, it has some performance improvements which hopefully have some effect | 17:17 |
| nightishaman | mal: Is it possible to specifically only build droid-hal-init. I added some debug prints, that I wanna see | 17:32 |
| mal | make hybris-hal only builds the parts that need changes meaning that have changed | 17:35 |
| T42 | <b100dian> @adampigg I don't seem to have that waydroid problem, I just updated an Android 10/Lineage 17.1 device to 5.1 - Does that mean I missed a package? | 17:36 |
| T42 | <elros34> @the_hiktor good question:P | 18:47 |
| T42 | <adampigg> what android version is the phone, and what waydroid / vendor version? (re @b100dian: @adampigg I don't se...) | 19:21 |
| T42 | <adampigg> mauybe i need to update | 19:21 |
| nightishaman | mal: It is as i expected, the switch to default namespace doesnt work and it thinks its still in bootstrap namespace when it is in fact not | 19:32 |
| T42 | <b100dian> @adampigg both answers are 10. Will try 11/11 throughout the next week. What about your versions, I thought you updated to 5.1 already? | 19:32 |
| T42 | <adampigg> halium/android 13, sfos 5.1 | 19:34 |
| T42 | <adampigg> i mean update waydroid, maybe the wayland support is improved | 19:34 |
| T42 | <b100dian> oh. 1.4.3 here | 19:41 |
| T42 | <b100dian> the waydroid version | 19:41 |
| T42 | <adampigg> i mean the waydroid image versions .. its them that have the wayland clicent code for surfaceflinger | 19:44 |
| T42 | <the_hiktor> mal : i took them from los flashed on device, you literally told me to take them from android side but this was like month ago | 20:08 |
| T42 | <the_hiktor> iirc i got them from vendor partition | 20:08 |
| T42 | <the_hiktor> i remember asking about the two files i found if they're the ones we need | 20:09 |
| mal | yeah, and the los was the same version you use as base? | 20:13 |
| mal | sorry if the questions seem stupid but just making sure | 20:13 |
| T42 | <b100dian> piggz: sorry I don't know where that code is. I however did not update waydroid on this device since forever. Are you sure it is surfaceflinger not hwcomposer? | 20:13 |
| T42 | <the_hiktor> @elros34 i got a lot more questions like that but im gonna stay quiet for now to maintain my dignityπ | 20:13 |
| T42 | <the_hiktor> mal : yeah pretty sure | 20:14 |
| nightishaman | mal: I found the cause | 20:15 |
| mal | nightishaman: what is it? | 20:15 |
| T42 | <the_hiktor> mal : if you could just tell me the exact file names if possible so i can double check π«€ | 20:16 |
| T42 | <the_hiktor> cuz since i added selinux files a lot of services fails to start like journal | 20:17 |
| mal | most likely same or close to the targets of these symlinks | 20:17 |
| mal | https://github.com/mer-hybris/droid-config-sony-seine/blob/eaa09db67b94352ef801417363008dc4005d9213/sparse/etc/selinux/minimum/policy/policy.30 | 20:17 |
| mal | https://github.com/mer-hybris/droid-config-sony-seine/blob/eaa09db67b94352ef801417363008dc4005d9213/sparse/etc/selinux/minimum/contexts/files/file_contexts | 20:17 |
| nightishaman | SetupMountnamespaces is never called, therefore the default and bootstrap namespace ids are never assigned. This fails the check in mount_namespace:SwitchNamespaceIfNeeded and we stay in bootstrap namespace. Since bootstrap namespace can't be initialized twice, it won't redo. But since SwitchNamespaceIfNeeded returns okay, it unconditionally mounts | 20:18 |
| nightishaman | /linkerconfig/default as /linkerconfig. So, the fixes are either, let SetupMountNamespaces run again or unconditionally run linkerconfig in init.rc | 20:18 |
| nightishaman | https://pastebin.com/VuhYvBR3 | 20:19 |
| nightishaman | https://pastebin.com/tnR55ccC | 20:19 |
| nightishaman | Im getting a lot of switching to default namespace and then WTF, we are in no namespace | 20:19 |
| mal | hmm, wondering why that is an issue for you, we have specifically commented out SetupMountNamespaces | 20:20 |
| mal | in hybris-patches/system/core/0033-hybris-Do-not-SetupMountNamespaces.patch which gets applied to system/core | 20:20 |
| nightishaman | I know | 20:21 |
| mal | you could try re-enabling that and see what happens | 20:22 |
| nightishaman | but the problem is, both bootstrap_ns_id and default_ns_id are zero, it works fine for bootstrap ns id, since it is zero, but the switch to default namespace wont work | 20:22 |
| T42 | <the_hiktor> mal: those are the files that i used | 20:22 |
| T42 | <the_hiktor> vendor_hwservice_contexts vndservice_contexts | 20:22 |
| mal | wait | 20:23 |
| mal | those seem different | 20:23 |
| mal | could you show what files you have in /vendor/etc/ | 20:23 |
| T42 | <the_hiktor> yeah ik things got ruined after using them | 20:24 |
| T42 | <the_hiktor> selinux and vintf | 20:25 |
| T42 | <the_hiktor> those two files are from selinux folder π | 20:25 |
| mal | check the selinux subfolder | 20:27 |
| mal | also check /odm/etc/selinux/ | 20:27 |
| mal | if you have one | 20:27 |
| mal | on fp5 I have precompiled_sepolicy in /odm/etc/selinux/ | 20:29 |
| T42 | <the_hiktor> ls -l /odm/etc | 20:29 |
| T42 | <the_hiktor> lrwxrwxrwx 1 root root 15 1970-01-01 00:00 /odm/etc -> /vendor/odm/etc | 20:29 |
| mal | check it also | 20:29 |
| T42 | <the_hiktor> idk | 20:29 |
| mal | so check if you have /vendor/odm/etc/selinux/ | 20:30 |
| T42 | <the_hiktor> no such file or directory | 20:31 |
| mal | find any place where you have files named precompiled_sepolicy and vendor_file_contexts | 20:31 |
| T42 | <the_hiktor> ok wait | 20:32 |
| T42 | <the_hiktor> so i found vendor_file_contexts in uhhhhh.... just there | 20:36 |
| T42 | <the_hiktor> and there's that file called sepolicy also just there | 20:37 |
| T42 | <the_hiktor> idk if it the one | 20:37 |
| nightishaman | mal: Ok for some reason now linkerconfig breaks on the second time. It says not found when the file exists, I had that error before when droid-hal-init didnt initialize correctly | 20:38 |
| nightishaman | I think going forward it would be best to just unconditionally run linkerconfig since the method for it is only called twice anyway | 20:38 |
| nightishaman | but i really wonder why your device has default filled already | 20:43 |
| mal | @the_hiktor not sure you said, where is precompiled_sepolicy? | 20:46 |
| mal | it has to be somewhere | 20:46 |
| T42 | <the_hiktor> wait i think i found them π π | 20:46 |
| mal | where? | 20:46 |
| mal | the filenames are important, don't just copy a file that is similar, it has to be exact | 20:47 |
| T42 | <the_hiktor> in vendor i forgot to mount it π π π π π | 20:47 |
| T42 | <the_hiktor> yeah the exact files | 20:47 |
| mal | and remember to use correct names for the target where you copy those | 20:48 |
| nightishaman | mal: Can you apply this patch and give me your journalctl output on your device? https://pastebin.com/vhaj2Ssc | 20:48 |
| T42 | <the_hiktor> mal : nvm the selinux files is already the right ones π | 20:52 |
| T42 | <the_hiktor> grammars crying in the corner π | 20:56 |
| T42 | <the_hiktor> mal: vendor_file_contexts file in / is just much smaller and contains less lines | 21:01 |
| mal | @the_hiktor ? | 21:04 |
| mal | that doesn't seem like a good thing | 21:05 |
| mal | if you mean by / the one in /etc/ | 21:05 |
| T42 | <the_hiktor> /vendor_file_contexts | 21:05 |
| T42 | <the_hiktor> /vendor/etc/selinux/vendor_file_contexts | 21:05 |
| mal | where did that /vendor_file_contexts come from? | 21:06 |
| T42 | <the_hiktor> i dont know but i pulled it and opened it it looks smaller | 21:06 |
| T42 | <the_hiktor> i can send both files if you want | 21:06 |
| mal | how does /vendor/etc/selinux/vendor_file_contexts compare to the /etc/selinux/minimum/contexts/files/file_contexts | 21:07 |
| T42 | <the_hiktor> wdym ? | 21:08 |
| mal | I mean which one did you copy to /etc/selinux/minimum/contexts/files/file_contexts | 21:08 |
| T42 | <the_hiktor> oh... vendor_file_contexts goes as files_contexts under /etc/selinux/minimum/contexts/files/ | 21:10 |
| T42 | <the_hiktor> sry wait | 21:11 |
| T42 | <the_hiktor> i copied the large one | 21:11 |
| mal | that is what I have been trying to say many times | 21:11 |
| mal | and /vendor/etc/selinux/precompiled_sepolicy goes to /etc/selinux/minimum/policy/policy.30 | 21:11 |
| T42 | <the_hiktor> yeah | 21:12 |
| mal | and that policy.30 is the filename | 21:12 |
| T42 | <the_hiktor> also yeah | 21:12 |
| mal | were those file correctly before? | 21:12 |
| T42 | <the_hiktor> yeah | 21:12 |
| T42 | <the_hiktor> but the new vendor_file_contexts thats found under / is just the new discovery | 21:14 |
| T42 | <the_hiktor> you can check my repo if you dont trust me | 21:17 |
| T42 | <the_hiktor> and better be π | 21:17 |
| nightishaman | mal: is there some way i can keep these messages from happening? droid-hal-init: Control message: Could not find 'aidl/android.frameworks.stats.IStats/default' for ctl.interface_start from pid: 2458 (/system/bin/servicemanager) | 21:36 |
| mal | nightishaman: so statsd is still not starting? same issue with linkerconfig? | 21:38 |
| nightishaman | statsd is only started by on zygote-start | 21:39 |
| nightishaman | usr/libexec/droid-hybris/system/etc/init/hw/init.rc:1166: start statsd | 21:41 |
| T42 | <adampigg> @b100dian woop, updated waydroid images to latest and it works | 21:41 |
| nightishaman | # It is recommended to put unnecessary data/ initialization from post-fs-data | 21:41 |
| nightishaman | # to start-zygote in device's init.rc to unblock zygote start. | 21:41 |
| nightishaman | on zygote-start | 21:41 |
| nightishaman | #wait_for_prop odsign.verification.done 1 | 21:41 |
| nightishaman | start statsd | 21:41 |
| mal | nightishaman: on my device statsd is started, how does logcat look on your device? | 21:42 |
| T42 | <b100dian> @adampigg interesting, how old was that image I may ask | 21:42 |
| mal | I think android should be able to start services in other ways also | 21:42 |
| nightishaman | mal: https://pastebin.com/LNG1ernQ my logcat | 21:44 |
| mal | that doesn't work | 21:45 |
| nightishaman | https://paste.ubuntu.com/p/9R3DZy3NRp/ | 21:45 |
| nightishaman | for some reason pastebin deletes the paste | 21:45 |
| mal | is that really logcat? I mean output of /system/bin/logcat | 21:46 |
| nightishaman | it is logcat -s droid-hal-init | 21:48 |
| mal | why only that? | 21:48 |
| mal | nightishaman: does your device have stuff in /odm/etc/init, did you mount odm? | 21:48 |
| nightishaman | because servicemanager spams even more because of IStats missing and IUsbGadget missing | 21:48 |
| nightishaman | my device has no odm | 21:48 |
| mal | grep -v helps, it removed the things matching the grep | 21:49 |
| T42 | <adampigg> No idea I think one of the earlier prerrelease halium13 images (re @b100dian: @adampigg interestin...) | 21:50 |
| nightishaman | Anyway, lipstick starts before android init is finished | 21:50 |
| mal | nightishaman: does this return anything: /system/bin/logcat | grep -i waiting | 21:50 |
| nightishaman | ~ # /system/bin/logcat -d | grep -i waiting: nothing | 21:51 |
| nightishaman | i added -d since otherwise it does streaming | 21:51 |
| nightishaman | without d nothing also | 21:51 |
| nightishaman | according to my paste it gets into on boot and then late-start | 21:51 |
| mal | does /apex look ok? | 21:53 |
| nightishaman | yes | 21:53 |
| nightishaman | linkerconfig also | 21:53 |
| T42 | <the_hiktor> mal : so what we conclude π | 21:54 |
| mal | nightishaman: just wondering why there is only 3 .rc files parsed from apex, unless log is skipping something | 21:54 |
Generated by irclog2html.py 2.17.1 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!