PDA

View Full Version : N770: installable bugfix for bug #2006 - Memory corruption during WLAN use


fanoush
2007-11-16, 12:13
As already mentioned in this thread (http://www.internettablettalk.com/forums/showthread.php?p=93349#post93349) there is unfixed critical memory corruption bug in all OS2006 firmwares and older hacker editions of OS2007. It was only recently fixed in latest hacker edition, see http://maemo.org/news/announcements/view/new_os2007_he_for_the_nokia_770_with_mozilla_engin e_and_memory_corruption_bugfix.html

This bug can cause major system instability when WLAN network is enabled. It can also corrupt files which are written when wi-fi is enabled. For more details see http://bugs.maemo.org/show_bug.cgi?id=2006

This bug is known for more than year (see links in comment
http://bugs.maemo.org/show_bug.cgi?id=677#c4) but was only recently analyzed and fixed.

You can download installable package from here (http://fanoush.wz.cz/maemo/cx3110x-hotfix-bug2006_0.2_armel.deb) or from bugzilla (https://bugs.maemo.org/attachment.cgi?id=618&action=view). File size 29666 bytes, md5sum is 7c8b12623ba0f74d096f214ecc44d167.
Package works both on latest OS2006 firmware and any OS2007 hacker edition so far.

It is advised to keep this on MMC card and install it after flashing affected firmware before using WLAN for the first time.

If you leave your wi-fi on at install time you must REBOOT your device after installation to make it effective so better disconnect before installation.

The fix lives in rootfs so if you boot more systems (from MMC) this must be installed in each system.

You don't need this for N800 and up and you also don't need it if you installed recent hacker edition linked above (whole image or just initfs). If installed on latest HE, it will override the fix already present.

You can verify in kernel log that fixed WLAN driver is installed - after boot open osso-xterm and type
dmesg
Driver is installed if you see something like

Unloaded CX3110x driver, version 0.8
CX3110x chip variant: STLC4370
CX3110x: firmware version: 2.13.0.0.a.13.14
Loaded CX3110x driver, version 0.8.1-bug2006-fix1

Thanks should go to Tilman Vogel for detailed analysis of this bug, to Siarhei Siamashka (a.k.a. Serge here) for discovering and fixing it and to others who helped.

Etaoin Shrdlu
2007-11-16, 13:46
Thank you fanoush, Tilman, and Serge for all of your hard work.

etaoin

Ron G
2007-11-16, 15:42
Is there value to installing this deb without reflashing?

Thanks,
Ron G

fanoush
2007-11-16, 16:00
Is there value to installing this deb without reflashing?

Yes, of course. Definitely it is worth installing since it will stop further corruption. It is just that you may already have some filesystem corruption so some crashes may remain. One example is previous installation of something over wi-fi that may cause corrupted binaries being saved while they are installed. Same applies to various configuration files saved by system or applications, see this (http://lists.maemo.org/pipermail/maemo-developers/2007-November/012526.html).
However it is possible that your system is still in good shape since most errors are only in RAM and there is high probability they bring system or application down before anything is saved permanently.

Reflash only if you have problems or want to start from clean system.

dont
2007-11-16, 16:39
Hmm... I re-flashed and installed the fix from mmc.
Whenever I open a browser it closes after a few seconds.

I will try again.

dont
2007-11-16, 17:19
So I re-flashed again and, before installing the patch, tooled around the Internet for a few minutes. Everything seemed OK except that Internettablettalk is incredibly slow (hanging on an ad server?) and freezes my 770 for long periods.

Then I installed the fix and tried again. In about 15 minutes of surfing I had one crash - on Internettablettalk.

I gave up on the latest 2007HE this morning because it choked on Internettablettalk. Going back to OS2006 with/without the fix is better, but it is still really bad - slow and the browser crashes.

I guess I will leave it on OS2006 + fix and avoid Internettablettalk for the time being.

tarheeltablet
2007-11-16, 17:30
I have had a tough time with internettablettalk.com since the new format on my 770 as well. I have to disable javascript so it does not crash.

fpp
2007-11-16, 17:36
I only ever set foot on ITT with my tablet using Mobile mode. It was quite broken in the very beginning but Reggie has improved it repeatedly since and it is now quite functional, at least for the usual things : see threads with new posts since last visit, read new posts, a quick answer, a search...

Back on topic : I just installed the Fanoush-fix on my 770 successfully, now we'll see if its still reboots itself within the next 24 hrs or not :-)

fanoush
2007-11-16, 17:49
Hmm... I re-flashed and installed the fix from mmc.
Whenever I open a browser it closes after a few seconds.


First - you did not mention rebooting, you should reboot after installation.

Second - this will not make your device magically 100% stable, there may be other bugs in the system (and particularly the browser).

Anyone is welcome to verify it with memtester. I did not verify this specific build but I did verify some previous builds with same patch applied.

dont
2007-11-16, 18:19
First - you did not mention rebooting, you should reboot after installation.

You are right :o even though you said so in bold letters.

I will do it again.

fanoush
2007-11-16, 18:30
You are right :o even though you said so in bold letters.

Actually I have edited the post later since people may indeed miss that but still the installation dialog tells you so. And it is not needed to reflash and reinstall due to that, just reboot at least once as soon as possible. Chances are low that some file really got corrupted after few minutes of browsing.

dont
2007-11-16, 18:55
I only ever set foot on ITT with my tablet using Mobile mode.

I know this is OT, but I simply cannot get past the first page of ITT in oder to set my style preference. Is there a way to specify mobile style without going through the first page?

bokubob
2007-11-17, 04:40
The fix lives in rootfs so if you boot more systems (from MMC) this must be installed in each system.

You don't need this for N800 and up and you also don't need it if you installed recent hacker edition (whole image or just initfs).

Fanoush,

I have the initfs from the new Hacker Edition, but it's patched with the boot menu from your site. Do I still have the updated driver? dmesg reports I'm running driver version 0.8.

With the new HE, it's installed in the initfs, but the patch you list goes into the rootfs? Is that right?

Thanks for your help,
-Jonathan

fanoush
2007-11-17, 10:37
I have the initfs from the new Hacker Edition, but it's patched with the boot menu from your site. Do I still have the updated driver? dmesg reports I'm running driver version 0.8.
Yes, most probably you still have it. Current HE has a bit older fix fom bugzilla which still have old version number.

With the new HE, it's installed in the initfs, but the patch you list goes into the rootfs? Is that right?

Yes. It is easier to make package that puts it to rootfs. Reflashing initfs from installable deb package is not worth the trouble.

tarheeltablet
2007-11-17, 22:06
Wow. This fix has definitely had a huge impact. Thanks

speculatrix
2007-11-17, 23:08
thanks! I installed as soon as I read this. I've not had my 770 too long so wasn't aware of problems, but am very please people are still supporting it.

mrp
2007-11-19, 07:42
does this fix work on 2007HE (not the latest one) as I experienced a lot of troubles with newest HE and reflashed the earlier HE version?

fanoush
2007-11-19, 09:03
does this fix work on 2007HE (not the latest one)
Yes it works. As for latest HE - the person responsible knows about some issues (http://lists.maemo.org/pipermail//maemo-developers/2007-November/012765.html) so there may be new fixed one soon.

kircho
2007-11-19, 19:48
Hmm... I am unsuccessfully trying to install this hotfix after fresh re-flashing Fanoush's image with the mms speed fix (zImage-yuv420). I am booting my os2006 from the mms card. But attempting to install the hotfix using the Application Manager gives a completely uninformative error: "Unable to install cx3110x-hotfix-bug2006."
Am I missing anything? Are the memory fix and the mms patch incompatible for some reason?
(I must say, I'm pretty happy with the os2006 for now and don't want to jump to the os2007HE quite yet.)
Thanks in advance for any help,
Kircho

fanoush
2007-11-20, 10:10
Am I missing anything? Are the memory fix and the mms patch incompatible for some reason?

No, they are not related.

You may try to re-download (try both links). Maybe even do it via PC and copy it to card since wi-fi is not 100% reliable without the bug fixed.

File size is 29666 bytes, md5sum is 7c8b12623ba0f74d096f214ecc44d167

mrp
2007-11-20, 13:07
Yes it works. As for latest HE - the person responsible knows about some issues (http://lists.maemo.org/pipermail//maemo-developers/2007-November/012765.html) so there may be new fixed one soon.
Can I flash your high speed kernel after bug fix on HE2007?

fanoush
2007-11-20, 13:20
Can I flash your high speed kernel after bug fix on HE2007?
Yes, this bug fix is not in kernel file.

kircho
2007-11-22, 08:29
Downloading the patch onto my laptop and transferring it to the N770 via USB did the trick.
Thanks a lot for the help!

Drewvt
2007-12-04, 12:29
Great work. You guys deserve a round of free drinks for this. :)

nosam
2007-12-11, 20:22
Can we make this a stickie. I have a 770 and never knew about this. We still need to do this, right? the newest version of OS 2006 still has this bug?

Edit: feeling foolish cause I didn't even look to see if it was already a sticky. sorry. thanks for the answer too.

fanoush
2007-12-11, 21:01
Umm, it IS stickie since the beginning :-) And yes it is needed for latest OS2006. Nokia closed official firmware development long time ago. They fixed it only in Hacker Edition.

fidolatry
2008-04-20, 20:00
This Apple/AirPort/770 user gives his sincere thanks for this :)

Energy Recruitment
2008-11-16, 02:13
hi,
Got this finally working. Too bad it is almost useless now, we needed it years ago ;-) What is tearsync? It is feature of omapfb driver that allows video playback without tearing effect. This feature is enabled in N8x0 kernel but never was part of Nokia 770 2.6.16 kernel shipped with any firmware. Luckily when first N800 2.6.18 kernel was released there was tearsync support added also in drivers for 770! All that was needed was to backport it to 2.6.16 kernel, right? Well, no. I did but it didn't work.

Only recently I've seen some strange issues with N800's MMC slot when going back to OS2007 and become aware of 'pin multiplexing' issue. Many pins of OMAP chip can be configured in software to have specific signal routed to it and this setting is done in bootloader. So maybe TE pin was simply not enabled? Too bad that any recent OMAP1 datasheet I could find had SoSSI documentation missing. Then I found in Google cache this text "revision D changes: ... removed all references to: ... Specially Optimized Screen Interface (SoSSI) ... deleted SoSSI function from the signal names with the following ball numbers ...". So after additional bit of googling (thanks Serge) and figuring out what all this means the answer is "ball G20, register 4, value 6, offset 6".

trin20t
2009-03-03, 22:35
Thanks! This may fix my reboot issue.

ehab
2010-11-08, 04:24
Worked for me too, thanks for all the info.