Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 715372

Summary: =sys-devel/icecream-1.0.0-r2 Unexpected Distribution of Work When Cross-Compiling with Icecream
Product: Gentoo Linux Reporter: primalucegd
Component: Current packagesAssignee: Gentoo Cluster Team <cluster>
Status: UNCONFIRMED ---    
Severity: normal CC: cross, jstein
Priority: Normal    
Version: unspecified   
Hardware: ARM   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Attachments: Tarball of the logs as described in the second to last paragraph of the description.

Description primalucegd 2020-03-30 01:22:20 UTC
Created attachment 627052 [details]
Tarball of the logs as described in the second to last paragraph of the description.

Quick summary: when used in conjunction with Portage, Icecream fails to distribute work to non-ARM computers.

More detail:
I have a small, static network of four Raspberry Pis (2Bs, v. 1.1) and my desktop (x86_64). On each of them, I have installed =sys-devel/icecream-1.0.0-r2, and followed the steps to enable my desktop to cross-compile to ARM for the RPis. In order to confirm that cross-compiling was working correctly, I got the source code for Mlucas, wrote a Makefile, and ran 'make -j9 -l4'. iceccd was only started on the Pi doing the building and my desktop. The build ran successfully, and I was able to see through 'htop' and 'icemon' that my desktop was doing the vast majority of the compiling.

Now confident that I had configured everything correctly, I started iceccd on the other Pis and started to merge =net-libs/webkit-gtk-2.24.4. Once it got past configuration, I noticed that only the RPis were doing any compiling - my desktop was getting no work. So I stopped the merge, stopped iceccd on all Pis but one, and on that one I tried the merge again. But just as in the last attempt, just the single Pi was doing any compiling.

To confirm that I hadn't accidentally messed up my configuration, I went and re-compiled Mlucas to ensure everything still worked, and work was distributed as I would expect - most of it to my desktop, and a little bit to the Pi.

I consulted the Icecream logs on both devices and the merge log on the Pi to see if perhaps I'd just missed something, but no errors were reported in any of the three. I even increased the verbosity of the logging and didn't notice anything amiss other than that the IP of my desktop just never shows up once I start compiling wit Portage.

I've so far been unable to figure out why this happens, but that's because I just genuinely haven't even got any idea where to start looking. Attached is a tarball with four files: emerge --info for my desktop, emerge --info for the Raspberry Pi, a log of iceccd when I used Icecream to compile Mlucas (this time with four RPis and my desktop), and a log of iceccd when I tried to use Icecream to compile =net-libs/webkit-gtk-2.24.4 (also with four RPis and the desktop). For reference, the IPs in the logs are as follows: 10.0.0.1 is my desktop; 10.0.0.251 is auro-rpi-1; 10.0.0.252 is auro-rpi-2; 10.0.0.253 is auro-rpi-3, which is the one running the merge; and 10.0.0.254 is auro-rpi-4.

Last small detail: I'm not sure if I'm even filing this in the right place. I don't know if I should be filing this with Portage, Icecream, here, or somewhere else entirely, since I genuinely haven't got a clue where the fault of this issue lies. So I ask for forgiveness in advance if I've gone and filed this incorrectly.
Comment 1 primalucegd 2020-03-30 01:35:20 UTC
Also, to be clear, I have tested this with other packages and gotten the same outcome. Work distribution behaviour with Icecream changes when using Portage. I failed to mention that in the initial post, so apologies for that.