Posts

Showing posts from March, 2009

Two more kernel patches

This one is MIPS related, already accepted: MIPS: Fix TIF_32BIT undefined problem when seccomp is disabled This one is proc filesystem related: [PATCH] filp->f_pos not correctly updated in proc_task_readdir The later one is also MIPS related actually, in a peculiar way: MIPS N32 does not have getdents64 system call. And because of readdir's implementation in glibc, this bug will be triggered when trying to run pstree or simply 'ls /proc/xxxx/task', where xxxx is the pid of a multithread process.

Firefox for MIPS N32 ABI

Finally, I could announce that it is working (tm). I just submitted the patches (together with O32 ABI patch) to upstream. https://bugzilla.mozilla.org/show_bug.cgi?id=482759 This is a big step forward for MIPS N32 GNU/Linux desktop. One thing to note though: It (the N32 one) would encounter bus error on a few websites, e.g. www.sina.com.cn. I will try to find out why later when I have time. For those who are into long stories, please read on: I finally sorted out the font size problem, independently. It turned out that the problem is caused by strict aliasing issue in NSPR (NetScape Portable Runtime). Specifically, when parsing css file, in order to get the font size, PR_strtod() will be used to convert string to floating point value. But because of the strict aliasing issue, certain code in PR_strtod will be optimized out if -fstrict-aliasing is turned on, which is just the case if -O2 is used. And as a result, the floating point value would be wrong, e.g. "1.5" will be con