yashsingh1/xdaforums huggingface dataset:
[Gen8 General] andrea_marcello:
Hi. For first thanks for your works :)

I've uruk 0.7 on A70IT..its smooth and fast but often stuck and I have to reset with power button..its noising..:confused:..there's a fix?
[Gen8 General] Hondaracer:
Why don't I have this problem on the stock firmware?
[Gen8 General] keule360:
?

I have it thx.
[Gen8 General] Mod57:
Force Closing

$aur0n, thank you again for offering UrukDroid to us Archos Gen 8 owners. I personally discontinued using the stock firmware due to the meager 265mb of space for applications. You have built in much more plus ext 4 is considerably faster. No going back for me.

As posted by several others the force close issue is real and started with Uruk 0.7 – Uruk 0.6 didn’t have this problem. I have removed widgets, stopped using live wallpapers and installed a task manager in hopes of curing the problem no luck.

I have noticed randomly my CPU will become pegged at 100%, not sure what triggers it, and won’t go back down unless I reboot. This has happened more than one time.

A couple days ago someone else posted they were having same problem. You requested they use terminal and run the following.

export TERM=vt100
top

I turned my Archos on and by chance it was maxed out again too, I had nothing running in the back ground. It was not hot and had been turned off for several hours. So I ran terminal as you suggested and got the following.

top - 15:32:33 up 12:33, 0 users, load average: 1.56, 1.89, 1.55
Tasks: 278 total, 1 running, 277 sleeping, 0 stopped, 0 zombie
Cpu(s): 67.2%us, 32.8%sy, 0.0%ni, 0.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 244612k total, 241600k used, 3012k free, 2452k buffers
Swap: 163824k total, 37988k used, 125836k free, 34076k cached

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
10856 storage 20 0 310m 40m 19m S 98.8 16.9 518:41.17 system_server
9256 root 20 0 2788 1320 936 R 1.0 0.5 0:01.32 top
1239 root 15 -5 0 0 0 S 0.3 0.0 0:30.76 sdio_wq
1 root 20 0 352 108 48 S 0.0 0.0 0:04.17 init
2 root 15 -5 0 0 0 S 0.0 0.0 0:00.02 kthreadd
3 root 15 -5 0 0 0 S 0.0 0.0 0:07.85 ksoftirqd/0
4 root RT -5 0 0 0 S 0.0 0.0 0:00.00 watchdog/0
5 root 15 -5 0 0 0 S 0.0 0.0 0:27.27 events/0
6 root 15 -5 0 0 0 S 0.0 0.0 0:00.54 khelper
9 root RT -5 0 0 0 S 0.0 0.0 0:00.00 kinteractive_up
10 root 15 -5 0 0 0 S 0.0 0.0 0:00.20 knteractive_dow
14 root 15 -5 0 0 0 S 0.0 0.0 0:37.88 suspend
153 root 15 -5 0 0 0 S 0.0 0.0 0:00.13 kblockd/0
163 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 cqueue
174 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 twl4030-irqchip
175 root 15 -5 0 0 0 S 0.0 0.0 0:00.06 twl4030-irq
205 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 omap2_mcspi

Why is system_user using 98.8% CPU, what can trigger this and can this be the cause of the force closing?
[Gen8 General] $aur0n:
System server is a main android (thus java - not os) process, started just after dalvik (java jre) initialization. So it can be literally everything - causing this problem.

I can see that you have swap memory and quite a lot of RAM is already used - you have only 36MB (3012+34076) of free ram. It would be good to take a look what other process are using it - you can change sort order in top by using < > keys (best is to sort over RES field).

I use Archos now all the time (but mostly for development, movie player, ebook/pdf/comic reader - rarely for games). I can't say it does not hang - but it's less then rarely, and I can't tell if it was different then on stock OS (I don't use it at all, and haven't used too much before - and it was 2.0.54 then).

Performing kernel debug is extremely difficult (hangs), doing some java debug is much easier - but still requires some decent java knowledge to do debug, and much better knowledge to find solution (and that's not me).
[Gen8 General] Hondaracer:
I was able to make it crash less frequent by setting the CPU speed to 300MHz-1000MHz interactive instead of a constant 1000MHz performance.
[Gen8 General] Mod57:
The strange thing is I haven't had it freeze in a couple days. I have been running the system hard. Trying to find an app or anything that causes the CPU to max out again. So far I have found nothing.

The positives of Uruk far surpass Archos stock firmware, just sharing what I have found. I like others patiently wait to see what you come up with next. :D
[Gen8 General] woti23:
a few questions to $aur0n:

- is inittab in /etc used?

can't find a /usr/bin/avos_helper.sh

- is, from where / at which point is init.A101IT.rc and/or init.archos.rc in /etc/init called? before or after /init.rc

- which format is 07logo.raw? (gunzip-ed, untar-ed it. kind of strange: its blue in irfanview - which looks nice btw. but can't get it to save again as a usable file)

anyway, its 5MB to write to framebuffer, disabling saves a few seconds when booting.

- in init.rc:

does it make sence to create lost+found in /cache? thought thats a directory not a mounted device?

- exporting lib path to non-exiting /opt/usr/lib

is that needed somehow on an other place?

- debuggerd, isn't that for connecting to gdb when crashing?

anyway disabled it

in kernel:

- core elf dumps? could be disabled

- cpu_frequency_max: is it possible in OC kernel to set to max 1GHz for boot/startup and setting to 1.2 oder 1.1 later in initscript?
[Gen8 General] Mod57:
It has been four days and I have the CPU locked to the max again. Just completed a brutal battle of Angry Birds, seems to be what caused it this time. Had CpuGovernor off and went to CPU speed 300MHz-1000MHz interactive as Hondaracer suggested. Quit using Swap, using CompCache only.

export TERM=vt100
top

top - 04:08:03 up 43 min, 0 users, load average: 1.86, 3.94, 4.02
Mem: 244612k total, 240664k used, 3948k free, 5828k buffers
Swap: 65528k total, 17224k used, 48304k free, 54096k cached

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
4188 storage 20 0 261m 43m 23m S 98.6 18.1 20:53.91 system_server
7263 root 20 0 2784 1316 936 R 0.7 0.5 0:01.05 top
7248 root 20 0 1172 628 436 S 0.3 0.3 0:00.54 dropbear
1 root 20 0 352 160 100 S 0.0 0.1 0:02.51 init
2 root 15 -5 0 0 0 S 0.0 0.0 0:00.01 kthreadd
3 root 15 -5 0 0 0 S 0.0 0.0 0:00.02 ksoftirqd/0
4 root RT -5 0 0 0 S 0.0 0.0 0:00.00 watchdog/0
5 root 15 -5 0 0 0 S 0.0 0.0 0:02.46 events/0
6 root 15 -5 0 0 0 S 0.0 0.0 0:00.11 khelper
9 root RT -5 0 0 0 S 0.0 0.0 0:00.00 kinteractive_up
10 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 knteractive_dow
14 root 15 -5 0 0 0 S 0.0 0.0 0:05.36 suspend
153 root 15 -5 0 0 0 S 0.0 0.0 0:00.08 kblockd/0
163 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 cqueue
174 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 twl4030-irqchip
175 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 twl4030-irq
205 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 omap2_mcspi
211 root 15 -5 0 0 0 S 0.0 0.0 0:00.00 twl4030_usb
215 root 15 -5 0 0 0 S 0.0 0.0 0:00.04 ksuspend_usbd
[Gen8 General] lius007:
WiFi Issues

Still have some issues with WiFi dropping the connection:

Urukdroid 0.7 installed on internal SD, using compcache only, when i try to copy an .Avi file using smb after 10Mb the connection drops, over and over again, any thoughts?

Using WEP in home wireless....

Everything else works fine (slower to switch from vertical to horizontal than stock), thanks for the great work on Uruk.
[Gen8 General] $aur0n:
1. No

2. Don't know - haven't found any info on this, and it was not essential like for now to know

3. Raw frame buffer dump. Every decoration takes time to load, but more then this logo, takes animation you have proposed to use...

4. This init.rc is same for initial boot and every next - this was original way

5. It's not - it won't harm

6. Don't know

8. Yes

9. It is possible, but what for? Anyway right CPU settings are done with cpugovernor service.
[Gen8 General] woti23:
ad 3. no: the progressbar (= no picture) takes the same time as the messages ("switchin to rootfs", "maintaince...") take. it ends with end of init in initiramfs. the uruk logo takes additional time.

the customized bootanimation.zip (i personally have one with 160k) is started _after_:

in

/init.rc (at the beginning) and shown while running

- init.rc

- init scripts

- dalvik dexopt, verify etc

until the homescreen appears

9. even if its set in init script, while booting, init.rc until init scripts are executed its runninp up to 1.2GHz - thats whats possible not the best idea, to over clock while booting.

2 - found out:

init.A101IT.rc is running after /init.rc

the propertiy gps is set there btw

setprop ro.board.has_gps yes

which is not true for 101?
[Gen8 General] $aur0n:
Try to use different router settings - in 0.7 both kernel module and wpa_supplicant are as in stock Archos OS (only firmware can be newer) - so not much I can do here. And wifi is all the time making trouble (it's the way it was "designed" - badly - all the time someone will get unhappy with default settings).

In 1.0 some parts of wifi stack are recompiled (wpa_supplicant) - but I wouldn't count, it will make wifi to work better with this issue.
[Gen8 General] $aur0n:
Despite your knowledge Woti, every time I read your response I get the feeling you did not read it carefully and you are answering for something else... perhaps it's my bad English (it's not ma native language) but somehow I doubt it.

ad3 I know animation is shown later - but this does not make it less CPU eating process and still slows down booting. We have a full stop at copying logo to frame buffer - but this is actually good anyway since there is stop required to populate all devices properly (there are empty loops in stock OS to wait for HD or SDcard).

setprop ro.board.has_gps yes - this is required, so Archos Android mod can pretend it has GPS and we can use it over blue tooth - all app thinks it's natively in device.
[Gen8 General] dkelley:
I too get regular system lockups with 0.7

Don't know why but always when running for a while.

Its disruptive and annoying but still vastly superior to stock ...

Would be a high priority fix though I think so if can send logcats etc let me know.
[Gen8 General] floyd0815:
Hi @all!

First THX for that great rom, works much better than the stock one!

Sadly I have experienced a few hangs (CPU 100%) and 2 crashes.

So I played with some sysctl settings and different swap sizes with less success.

BUT I noticed that there must be something wrong with the swap (compcache), because I have forced the system to use it more (sysctl -w vm.swappiness=85)(only compcache enabled) and after that some opened apps crushed or didn't come into foreground again or caused CPU overload.

Before that I thought SuperUser was the faulty app (caused twice 95%CPU), but it wasn't always the same app causing the overload.

So I've disabled swap (both) and I am quite happy with it for now.(no freezes or overloads)

Also I've executed "renice -5 <PID>" so my FlexT9 keyboard doesn't get killed and it works.

EDIT: Can someone explain me why "renice" does permanently set a value on the Archos, but not on my HTC Desire? (on 2.2 nor on 2.3) Is there a kernel parameter for that?
[Gen8 General] dkelley:
cool! so since I get plenty of lockups if I just use UrukConfig to disable CompCache it might help? If you're right about that being the cause of course...

where is more info about how/where I enter the renice code (such as what is the name of the item who's PID I need to look for in the processes in terminal?). I want to try flext9 but not if it's known to not work well on teh 101. If your fix works I'm going to try it though. edit: and that's a good point about it sticking in archos - why does it stick?

Thanks so much in advance
[Gen8 General] dkelley:
ok so I went ahead and tried that. disabled compcache on boot and realtime, rebooted (never know, might be important).

ran setcpu stress test for 15 minutes without and issue (using non oc kernel 300 - 1000 ondemand). currently running "stability test" from market (free). no issues yet either.

I hope it's this solid i real use but I'm working so can't play games or mess with bt tethered gps right now (both of which have killed it sometimes in the past after a while).
[Gen8 General] floyd0815:
@dkelley

I haven't had a force close (market, vending), freeze or CPU overload since I've disabled swap.

Also the FlexT9 wasn't killed since the renice command and the memory management seems to work right. My A101 is snappy as hell, only after YouTube vids in browser (flash beta), the browser closes, but I had that behavior also with swap.

Renice: This is only to hold the app in mem, not for whatever.

Download "Terminal Emulator"

su
export TERM=vt100
top
renice -5 <PID>

To stop TOP press "vol-" + "c", look up the <PID> of the app you don't want to get killed and enter the last command with the right PID. e.g.: renice -5 2645

Done.

I've got the archos since Monday and today is the first day without trouble, till yet.

So I'm praying to God... ;-)
[Gen8 General] dkelley:
awesome, thank you for details! :-)

I just had my first freeze though :-(. running stability test v1.5 for 39 minutes the tablet is frozen now.

so I'm just not sure... of course it could just be my tablet.

at that point the tool said temperature was 23.0C, system load was 2.50, bogomips was 996.74. core 1 had 28 successful runs. ram had 153 successful runs.

edit: right around the usb host port (this is on a 101 by the way) it's quite hot, but still touchable. I've felt hotter in my htc hero in the past, but who knows how hot it is inside. I'd be surprised if the temp reading was correct in that app, or if the temp reading (which is likely of the battery) actually reflects the temp of more vital parts of the device.

But it might not be temp related.
[Gen8 General] floyd0815:
Did you install it on an sd or internally? Maybe an sd reader bug?

I've installed it internally over the whole disk (8GB) and I don't play games on it so maybe it's only solved in my case.

Sorry.
[Gen8 General] dkelley:
internally using the default filesystem settings in advance mode for 0.7

could be that it's not exploiting the bug as often with compcache disabled... maybe the bug is there but it's tougher to encounter it now.

any improvement is always a good thing :-)
[Gen8 General] woti23:
renice has nothing to do with "not getting killed or keep in ram".

renice is altering the priority of the process that it gets from the scheduler.

value 0 is the base, negative renice gets the process more priority compared to the value it has allready

and it is lost by reboot btw.

even if the process is killed und started new the renice is lost

and if you renice and it runs amok, then it runs with high priority amok ;-)

so i'm not sure about this being a good idea.

you could use minfree manager to try different values at which ram is freed for different kind of processes (foreground, visible, .....)
[Gen8 General] floyd0815:
Yeah, that's (kind of) true. But apps with a higher priority / lower niceness have a lower chance to get killed. (that was the way they made the phone app "stay in mem" on some Hero roms)

I also know that the oom_adj is what I was talking about, but it isn't persistent, which is driving me nuts on my Desire. (there is "nice" also not permanent) I have an app which mostly doesn't come into foreground (only shows onscreen folders) and so it often gets killed by the oom-killer

Is there a kernel parameter which is making niceness persistent?
[Gen8 General] $aur0n:
You can modify ooem killer parameters in init.rc. Niceness was just a bad work around - since Uruk is fully "open" you can do it in other ways.
[Gen8 General] woti23:
no, kernel does only know on fix process number 1 (init), not which process has which number (pid)

from the commandline yes:

nice -n x command

where x is a value (+ or -) (there are differnt versions and syntax, eg nice is built in in some shells but also a standalone binary)

but in android you don't start apk's from commandline.

on desire: there were scripts that niced camera eg for better performance, but they didn't long do with that. think you can confuse the android system more than get the desired result - you can even make things worse.

if its the only workaround possible, but better search other solutions.

you could try more agressive setting for not foreground apps

echo "1536,2048,4096,10240,28800,57600" > /sys/module/lowmemorykiller/parameters/minfree
[Gen8 General] floyd0815:
@$aur0n

THX for the superior ROM, no need to edit the oom parameter. (On the Archos)

I've got about 40mb "free" RAM and the system is really snappy.

But if someone wants to play games and stuff, my swapless setup is surly the wrong choice.

@woti23

I know "man nice" ;-) , not a noob in Linux: my notebook

But since I have plenty of RAM on my PC's, I never had to fight with the oom-killer.

The settings you mentioned does the "Autokiller"(IS NOT A TASKKILLER!) for me (on the Desire).

The A101 works for my purposes and since Gingerbread, the Desire also works very well, except that one (not in foreground) app often gets killed, where the oom settings don't help.

What I want to know is:

Why does the Archos not dynamically reset the niceness, like I have seen it in Froyo on the Desire? (kernel par?)
[Gen8 General] woti23:
android doesn't work that way for apps, look at

http://developer.android.com/guide/topics/fundamentals/processes-and-threads.html

for the android way. it has its own hierarchy for importance and what it thinks "is good for the user" to be "destroyed" (which tasks are "killed") when memory is full

(which lets it open for a conclusion: "if a user is unhappy how an app behaves, its up to him to uninstall it" ;-)

and this can be fundamental different from the kernel way of handling priorities

the uruk kernel uses the "group scheduler" (groups based on uid). no clue who decides about grouping processes here.

on the desire: the kernel has cgroups enabled, and dalvikvm seems to have it implemented, but i have found no one explaining how this is done.

and - funny enough: kernels with cgroups (you have thousands of error messagges from dalvik in log when not) + bfs + the android philosophy together ;-)
[Gen8 General] woti23:
OT: wow, this is great, i'm jealous, ubuntu on my netbook too, but without touchscreen ;-)
[Gen8 General] floyd0815:
@woti23

Thx for that link, will have a deeper look into it (and into init.rc), later.

Swap:

I tried the normal swap and it's working, but because swapped apps take 2-3 sec longer to reopen and there is no benefit for me (flash player problem remains) I'll stay swapless.
[Gen8 General] woti23:
swap works well for me, i have system and data on sdcard, and 500MB swap (i dont know why but bigger partitions seem to be overall faster even if only a part of it is used) on own partition in internal nand.

if i use flash player, ram usage increases 15MB and swap 45MB but its smooth.

compcache: i'm not amazed. this is no new invention btw. macintosh had it 20 years ago ("ramdoubler") to run programs that did not fit in 2MB ram at this time otherwise. it's slow and only useful if the cpu is powerful enough to compensate the ongoing compression/uncompression.

but everyone its own ;-)
[Gen8 General] floyd0815:
Yeah, the vid runs smooth, but after watching, if I want to go back or click on another one, the browser closes. (also with the new fp from market) Now I use the YouTube app and it's fine but I will try your way too.

You only increased the size in /etc/init.d/swap... ? Leaving force 60%?
[Gen8 General] woti23:
no i have swapiness set to 100

btw; you could also try to put the browsercache in a tmpfs in ram

this increases the browser smoothness a lot. its done like htc did it on the desire eg with /app-cache/com.android.browser/cache/webviewCache and symlinking the webviewCache in the /data/data/ browser-directory to it.
[Gen8 General] floyd0815:
Yeah, I have thought about that (cache) since I do that also on my notebook. (but the whole ff folder because of the sql databases and my new SSD)

Will give it a shot, but is the flash cache also in there? (invisible/marked as deleted like in Ubuntu)

EDIT: Since we have an fstab to modify, I could mount the webcache directly

into RAM, right?
[Gen8 General] woti23:
no need for fstab

in init.rc

###
mkdir /app-cache
mount tmpfs tmpfs /app-cache size=5m

rm -r /data/data/com.android.browser/cache
mkdir /app-cache/com.android.browser
chmod 755 /app-cache/com.android.browser
chownto /app-cache/com.android.browser /data/data/com.android.browser
mkdir /app-cache/com.android.browser/cache
chmod 755 /app-cache/com.android.browser/cache
chownto /app-cache/com.android.browser/cache /data/data/com.android.browser
ln -s /app-cache/com.android.browser/cache /data/data/com.android.browser/cache

if the archos toolbox doesn't have the chownto symlink you must create the symlink once

ln -s toolbox chownto

if the command is missing in toolbox, the toolbox binary from the desire works

if you want more ram for tmpfs just change 5m to something that fits. i think original android browser (com.android.browser) uses max 6m

if you want an other browser to use just change the "com.android.browser" in the lines above to the name of your browser. (as the directory is named in /data/data)

i do the same in an /etc/init.d script but i run all my initscripts before "class default" in init.rc services are started, so that its done before dalvikvm is started (as its done on the desire)

the desire does it in /bootcomplete.bravo.rc if you put it in init.rc you must find the right place to insert (/data allready mounted)
[Gen8 General] floyd0815:
PLZ post your toolbox here.(with md5sum) Seems like the one from GV1.6 doesn't have chownto. (Desire tells me too => chownto: not found)

Many THX for all!

EDIT: no such tool (forgot to symlink on the Desire)
[Gen8 General] dkelley:
Just had another freeze. Playing 5 minutes of battle bears. Daughter wasn't happy LOL.

Compcache disabled. Default CPU settings. Interactive.
[Gen8 General] $aur0n:
Compcache is not an issue - since it was already in 0.6 (and 0.5) and there was no freeze issue. My guess is v4l stack - it's the most heavily changed stuff in 0.7. I'll prepare kernel without those changes (but it will disable dvb support) and let you know to try it.
[Gen8 General] dkelley:
outstanding $aur0n. That does sound most likely. I also tried slowing cpu to 800MHz max but it still locked up, this time just using tapatalk. So it's definitely not a cpu speed or compcache issue.

Really looking forward to testing your modded kernel - seems like I'm experiencing these freezes more than many other users so am really looking forward to this. Honestly my 101 is nearly useless right now.

For now I'll boot into stock android, slow and annoying though it is, and will watch for your kernel build.

cheers and thanks for all the hard and quite amazing work!
[Gen8 General] dkelley:
oh forgot another thing, apps keep disappearing from the app drawer. I thought I mentioned this but can't find the post LoL.

battle bears disappeared, but it was still installed just no icon in any launcher. reinstalled over top and it came back of course. then angry birds disappeared. odd thing there - after a couple of reboots angry birds is back again!? but after first reboot angry birds was still gone. so I dunno what's up with that.

seems like shortcuts in the app drawer are disappearing or getting corrupted somehow and then eventually, at least with angry birds it came back on it's own after an hour or so. strange.

I searched but couldn't find anything for "disappearing apps", sorry if this has been discussed already.

I hope this isn't sounding ungrateful or picky - I'm so appreciative of your hard work and creative ways of increasing virtual ram and storage on this device. edit: I wouldnt' even have bought an archos 101 if it wasn't for my research into your modified firmware.