*** Walkerdine has joined #baserock | 00:23 | |
Walkerdine | annnnnd my build failed | 00:23 |
---|---|---|
*** zoli___ has joined #baserock | 00:29 | |
*** zoli__ has quit IRC | 00:29 | |
Walkerdine | Got the error "g++: internal compiler error: Killed (program cc1plus)" So I guess the jetson ran out of ram | 00:30 |
*** zoli__ has joined #baserock | 00:46 | |
*** zoli___ has quit IRC | 00:46 | |
Walkerdine | Building again to see if building the artifacts had anything to do with it | 00:54 |
*** zoli__ has quit IRC | 01:19 | |
Walkerdine | Hmm it still failed. I keep running out of RAM | 01:57 |
*** zoli__ has joined #baserock | 02:19 | |
*** zoli__ has quit IRC | 02:23 | |
*** zoli__ has joined #baserock | 02:24 | |
*** zoli__ has quit IRC | 02:27 | |
*** zoli___ has joined #baserock | 02:27 | |
Walkerdine | I added swap space on an SD card I'll see how that works out | 02:53 |
*** zoli___ has quit IRC | 03:03 | |
*** zoli__ has joined #baserock | 03:03 | |
*** zoli__ has quit IRC | 03:50 | |
*** zoli__ has joined #baserock | 03:50 | |
*** zoli__ has joined #baserock | 04:51 | |
Walkerdine | Swap space is working out so far | 04:52 |
*** zoli__ has quit IRC | 04:57 | |
*** zoli__ has joined #baserock | 05:52 | |
*** zoli__ has quit IRC | 05:57 | |
*** zoli__ has joined #baserock | 06:31 | |
*** paulw has joined #baserock | 06:38 | |
*** zoli__ has quit IRC | 06:45 | |
*** zoli__ has joined #baserock | 06:46 | |
*** zoli__ has quit IRC | 06:48 | |
Walkerdine | Hey it worked! Finally! | 06:55 |
paulsherwood | w00t! | 07:15 |
radiofree | Walkerdine: which component was running out of memory? | 07:16 |
Walkerdine | 321 | 07:22 |
Walkerdine | Okay now that I deployed my upgrade how do I get back to the baseline? I thought I'd be able to select which one it booted into | 07:24 |
radiofree | system-version-manager list | 07:27 |
radiofree | and probably you want to do `system-version-manager set-default factory` | 07:27 |
Walkerdine | How do I do that if I'm in the Genivi demo platform? | 07:27 |
Walkerdine | I was probably supposed to do that first wasn't I | 07:28 |
Walkerdine | Wait jk | 07:34 |
Walkerdine | Unless I send the command over ssh or something | 07:34 |
Walkerdine | Yep sorry still getting the hang of this | 07:37 |
paulsherwood | keep going :) | 07:37 |
Walkerdine | I'm finally up and running! Now I can start to actually do something | 07:39 |
Walkerdine | Thanks for all the help | 07:40 |
paulsherwood | you've been very patient :) | 07:40 |
Walkerdine | Is there a way to do this using a VM that emulates an ARMv7? Or is the jetson really the only option | 07:43 |
*** tiagogomes_ has joined #baserock | 07:49 | |
Walkerdine | Welp anyway its time for bed. Goodnight everyone | 07:50 |
*** rdale has quit IRC | 07:50 | |
Walkerdine | Or should I say goodmorning | 07:50 |
pedroalvarez | baserock never sleeps :)_ | 08:03 |
*** bashrc has joined #baserock | 08:04 | |
*** toscalix_ is now known as toscalix | 08:05 | |
*** mariaderidder has joined #baserock | 08:13 | |
*** paulw has quit IRC | 08:13 | |
*** zoli__ has joined #baserock | 08:19 | |
*** paulw has joined #baserock | 08:22 | |
*** zoli__ has quit IRC | 08:24 | |
*** zoli__ has joined #baserock | 08:27 | |
*** zoli___ has joined #baserock | 08:36 | |
*** zoli__ has quit IRC | 08:37 | |
*** zoli___ has quit IRC | 08:37 | |
*** zoli__ has joined #baserock | 08:42 | |
richard_maw | paulsherwood: hmm, I can't leave comments in-line on the web UI. I'll send you an e-mail. | 08:42 |
*** rdale has joined #baserock | 08:48 | |
paulsherwood | Walkerdine: we'll have news on that soon, i hope | 09:04 |
paulsherwood | richard_maw: i could send the patch to the ml? | 09:06 |
richard_maw | I've already generated the patch and am mid-response. | 09:06 |
richard_maw | If you want the review to be public I can send it to the list. | 09:06 |
paulsherwood | ok by me | 09:07 |
richard_maw | paulsherwood: If you're sure it's ok. It can serve as a useful example. | 10:04 |
*** zoli___ has joined #baserock | 10:06 | |
*** zoli____ has joined #baserock | 10:08 | |
*** zoli___ has quit IRC | 10:08 | |
paulsherwood | richard_maw: are you going to trash my code? :-) | 10:08 |
paulsherwood | please go ahead | 10:08 |
*** zoli__ has quit IRC | 10:08 | |
Kinnison | It's a way for everyone to learn | 10:09 |
richard_maw | paulsherwood: you've made some of the most useful mistakes for explaining some of the intricacies of locking | 10:09 |
rjek | :) | 10:10 |
* richard_maw thinks the biggest wart on the flock API is that you can't pass a timeout | 10:10 | |
Kinnison | threads and alarums | 10:11 |
* Kinnison hides | 10:11 | |
rjek | alarm() and a signal handler | 10:11 |
richard_maw | Kinnison, rjek: Yes, I'm aware of how you have to get around it. The result is that potentially the least ugly way of doing a blocking lock with a timeout is to shell out to flock | 10:12 |
Kinnison | :-) | 10:12 |
richard_maw | paulsherwood: review sent | 10:20 |
*** zoli____ has quit IRC | 10:24 | |
*** zoli__ has joined #baserock | 10:24 | |
*** paulw has quit IRC | 10:32 | |
*** paulw has joined #baserock | 10:33 | |
*** zoli__ has quit IRC | 10:56 | |
*** zoli__ has joined #baserock | 10:56 | |
*** zoli__ has quit IRC | 10:56 | |
paulsherwood | richard_maw: rebuttal attempted :) | 11:21 |
*** paulw has quit IRC | 11:29 | |
*** zoli__ has joined #baserock | 11:45 | |
Walkerdine | Is the functionality of working on a virtual arm just not there right now for baserock or there just isnt a well documented way of doing it? | 13:29 |
Kinnison | ARM emulation is expensive | 13:30 |
radiofree | well you can always run it in qemu-arm but it'll be very slow | 13:30 |
Kinnison | the best emulators seem to achieve a hundred MHz per GHz of x86 or thereabouts | 13:30 |
paulsherwood | Kinnison: on that basis my scaleways results are not so bad :) | 13:32 |
Kinnison | paulsherwood: indeed | 13:32 |
Walkerdine | So would VMware be my best option then? | 13:36 |
Kinnison | vmware for ARM? | 13:37 |
Walkerdine | yeah | 13:37 |
Walkerdine | Or do they not have support for that | 13:37 |
rjek | I don't know if qemu-kvm does ARM systems yet | 13:37 |
rjek | But VMware do not have an ARM product | 13:38 |
paulsherwood | Walkerdine: i've been building arm baserock systems on scaleway.com machines recently, it's quite fun, but still quite slow | 13:40 |
rjek | paulsherwood: How many have you tried using at once? How does it compare to a Moonshot m700 cartridge? | 13:41 |
* rjek keeps meaning to play with Scaleway | 13:41 | |
paulsherwood | rjek: one machine doing the ci: https://raw.githubusercontent.com/devcurmudgeon/build-logs/master/ci.scaleway.armv7lhf.log | 13:42 |
rjek | 20 hours? | 13:42 |
paulsherwood | 5 in a herd got it down to 11:10:00 | 13:43 |
paulsherwood | yup | 13:43 |
rjek | ouch | 13:43 |
paulsherwood | indeed | 13:43 |
*** zoli__ has quit IRC | 13:43 | |
rjek | If only they'd slung an mSATA card under each CPU :) | 13:43 |
* paulsherwood can't find any moonshot logs | 13:44 | |
*** zoli__ has joined #baserock | 13:44 | |
*** Walkerdine has quit IRC | 13:47 | |
*** Walkerdine has joined #baserock | 13:55 | |
*** zoli___ has joined #baserock | 14:06 | |
*** zoli__ has quit IRC | 14:08 | |
*** rdale has quit IRC | 14:12 | |
paulsherwood | richard_maw: can we talk briefly here about this locking thing? | 14:16 |
paulsherwood | my point is i only need to know the set of files at the point i take the exclusive lock. once i know that set, i can take as long as i like trying to delete them, without a lock | 14:17 |
paulsherwood | and if other ybds do the same, it doesn't matter so long as they do so in the try block | 14:18 |
richard_maw | 1. converting the exclusive lock into a shared lock is sufficient to prevent you entering the situation where you have two YBDs attempting to remove files at the same time | 14:20 |
richard_maw | 2. just throwing them into a try-except is not sufficient | 14:20 |
richard_maw | let me finish | 14:20 |
richard_maw | because a) when it throws an exception because the file it wants to remove no longer exists, it doesn't then resume removing the rest | 14:20 |
richard_maw | so when they do stomp on each other, the most you can hope for is that only one of the removes stops working | 14:21 |
richard_maw | when if they both try to remove the same set of files in different orders, they will both stop trying to remove things | 14:22 |
richard_maw | and b) the try-except is in the wrong place to prevent that | 14:22 |
richard_maw | since if you get an exception, it will jump into that handler | 14:22 |
richard_maw | and then proceed to start another build | 14:22 |
paulsherwood | as that all? | 14:22 |
richard_maw | _o_ | 14:23 |
paulsherwood | 1. i want an exclusive lock only to be sure no other instances are building at this point. if i have a lock, i can be 100% that the to_delete files can go. | 14:24 |
paulsherwood | do you agree with the above? | 14:24 |
paulsherwood | a shared lock does not give me that confidence | 14:26 |
paulsherwood | any other ybd hitting the lock skips cleanup | 14:27 |
richard_maw | yes, I *get* that point, it's that you then release the lock, so there's a period that isn't locked, rather than atomically converting it into a shared lock, so no *other* YBD can decide it knows everything and can start deleting files | 14:27 |
paulsherwood | the shared lock has a different purpose. it says i'm using the tmpdir. | 14:29 |
paulsherwood | for the occasional situations where more than one ybd believe they know what to delete, they may trip over each other | 14:29 |
paulsherwood | but that's still ok, for me - partial cleanup is better than none. and i think that case is rare | 14:29 |
paulsherwood | (and they don't crash) | 14:31 |
Kinnison | I think you're wilfully ignoring a valid issue just because you think it'll be rare | 14:32 |
Kinnison | Which is your perogative | 14:32 |
Kinnison | but you're also missing the point that there is a period where you have no lock | 14:32 |
paulsherwood | i'm not missing the point. | 14:33 |
Kinnison | In traditional locking strategies, you don't acquire more locks after releasing any | 14:33 |
Kinnison | hence the atomic conversion recommendation from richard | 14:33 |
paulsherwood | Kinnison: to be clear, the impact of this issue is that it doesn't clean optimally once in a while | 14:35 |
paulsherwood | not that anything will crash or builds will fail spuriously | 14:35 |
paulsherwood | (except ENOSPACE) | 14:36 |
Kinnison | If you state that "When ybd runs, it will make an attempt to clean up temporary directories, which may or may not succeed to a greater or lesser extent" | 14:36 |
Kinnison | then it meets your implementation | 14:36 |
paulsherwood | yup | 14:36 |
* Kinnison would maintain that this is a worthless assertion | 14:37 | |
rjek | That's horrible | 14:37 |
Kinnison | but that's your perogative | 14:37 |
paulsherwood | lol | 14:37 |
Kinnison | "when you run this, it might maybe do something useful, or not, YMMV" | 14:37 |
Kinnison | not my favourite tool definition | 14:37 |
Kinnison | :-) | 14:37 |
* rjek wonders what the problem with making it never fail is. | 14:37 | |
richard_maw | in the very least *please* wrap your subprocess with its own try-except, so that it doesn't attempt to start another build when two builds attempt to clean up the same thing | 14:38 |
paulsherwood | rjek: so far, the problem with that is i'm getting loads of information about locking as if i don't know what i'm talking about, rather than a few lines to improve the implmenetation | 14:38 |
richard_maw | I promised review, not patches. | 14:38 |
richard_maw | and I've posted examples | 14:38 |
paulsherwood | thank you | 14:39 |
paulsherwood | i'm promising code that works effectively, not 100% efficiently | 14:39 |
Kinnison | I'd argue that "incorrectly" or "intermittently" doesn't equal "effectively" but you're welcome to disagree | 14:47 |
* Kinnison does, however, not care since we'll just clean up /src/tmp *before* invoking ybd | 14:47 | |
*** mariaderidder has quit IRC | 15:00 | |
paulsherwood | :) | 15:01 |
paulsherwood | in other news, i got so involved in this i've missed my flight :/ | 15:01 |
*** mariaderidder has joined #baserock | 15:12 | |
nowster | eek! | 15:14 |
*** zoli___ has quit IRC | 15:15 | |
paulsherwood | maybe it serves me right :) | 15:44 |
*** mariaderidder has quit IRC | 16:47 | |
*** bashrc has quit IRC | 16:49 | |
*** tiagogomes_ has quit IRC | 18:23 | |
*** toscalix has quit IRC | 18:26 | |
*** zoli__ has joined #baserock | 18:34 | |
*** zoli___ has joined #baserock | 19:12 | |
*** zoli__ has quit IRC | 19:14 | |
*** zoli__ has joined #baserock | 19:27 | |
*** zoli___ has quit IRC | 19:27 | |
*** zoli__ has quit IRC | 19:38 | |
*** zoli__ has joined #baserock | 19:38 | |
*** zoli__ has quit IRC | 19:56 | |
*** zoli__ has joined #baserock | 19:56 | |
*** zoli___ has joined #baserock | 20:33 | |
*** zoli__ has quit IRC | 20:33 | |
*** Walkerdine has quit IRC | 20:35 | |
*** jjardon has quit IRC | 23:03 | |
*** jjardon has joined #baserock | 23:09 |
Generated by irclog2html.py 2.15.3 by Marius Gedminas - find it at mg.pov.lt!