[Embedded Linux] Arora makes Linux running out of memory on mini2440 board

89 views
Skip to first unread message

Jeff

unread,
Jun 17, 2011, 7:27:34 PM6/17/11
to aror...@googlegroups.com
Hi,

I am encountering a weird problem because on the first run everything was seeming ok. And then, for now, I cannot run Arora on my dev board anymore, it causes an oom-killer invoke.

Therefore, the main question is does my system fits the minimum requirements ? So, here it is a little recap.


Hardware:
FriendlyARM mini2440 board
ARM 920T 400MHZ µP
64MB SDRAM
1GB NAND


Software:
Linux kernel 2.6.39.1
Emdebian rootFS on UBIFS partition
Qt 4.7.3 for Embedded Linux
Tslib
Arora 0.11.0


I have cross-compiled Qt, tslib and Arora without any problem, using the emdebian cross-toolchain.
All demos provided with Qt are running on my board.

Here is the qmake.conf file I've used to cross-compile Arora (most part from emdebian but a little tweaked for my config)

MAKEFILE_GENERATOR      = UNIX
TEMPLATE                = app
CONFIG                  += qt warn_on release incremental link_prl
QT                      += core gui
QMAKE_INCREMENTAL_STYLE = sublib

include(/usr/local/Qt/mkspecs/common/unix.conf)
include(/usr/local/Qt/mkspecs/common/g++.conf)
include(/usr/local/Qt/mkspecs/common/linux.conf)

CROSS_GNU_ARCH          = arm-linux-gnueabi
warning("preparing QMake configuration for $$CROSS_GNU_ARCH")
CONFIG += $$CROSS_GNU_ARCH


QMAKE_CC                = $$CROSS_GNU_ARCH-gcc
QMAKE_CXX               = $$CROSS_GNU_ARCH-g++
QMAKE_LINK              = $$CROSS_GNU_ARCH-g++
QMAKE_LINK_SHLIB        = $$CROSS_GNU_ARCH-g++
QMAKE_LINK_C            = $$CROSS_GNU_ARCH-gcc
QMAKE_LINK_C_SHLIB      = $$CROSS_GNU_ARCH-gcc

QMAKE_CFLAGS_RELEASE    += -march=armv4t -mtune=arm920t
QMAKE_CXXFLAGS_RELEASE  += -march=armv4t -mtune=arm920t
QMAKE_CFLAGS_DEBUG      += -march=armv4t -mtune=arm920t
QMAKE_CXXFLAGS_DEBUG    += -march=armv4t -mtune=arm920t

QMAKE_INCDIR            += /usr/local/tslib/include
QMAKE_LIBDIR            += /usr/local/tslib/lib
QMAKE_LFLAGS            += -Wl,-rpath-link=/usr/local/tslib/lib

#QMAKE_INCDIR            = /usr/$$CROSS_GNU_ARCH/include/
#QMAKE_LIBDIR            = /usr/$$CROSS_GNU_ARCH/lib/
QMAKE_INCDIR_X11        = /usr/$$CROSS_GNU_ARCH/X11R6/include
QMAKE_LIBDIR_X11        = /usr/$$CROSS_GNU_ARCH/X11R6/lib
QMAKE_INCDIR_QT         = /usr/local/Qt/include
QMAKE_LIBDIR_QT         = /usr/local/Qt/lib
QMAKE_INCDIR_OPENGL     = /usr/$$CROSS_GNU_ARCH/X11R6/include
QMAKE_LIBDIR_OPENGL     = /usr/$$CROSS_GNU_ARCH/X11R6/lib
QMAKE_AR                = $$CROSS_GNU_ARCH-ar cqs
QMAKE_OBJCOPY           = $$CROSS_GNU_ARCH-objcopy
QMAKE_STRIP             = $$CROSS_GNU_ARCH-strip

load(qt_config)


I am available for any clarification.
Thank you in advance for time you will spend to answer me.

Best regards,
Jeff

Jeff

unread,
Jun 18, 2011, 11:09:54 AM6/18/11
to aror...@googlegroups.com
Hi,

A new input, I have forgotten to tell you that I have simply copied Arora's executable in /usr/bin directory of my dev board and I run it with the following command :

# arora -qws

I don't know if Arora needs extra data to run properly. I didn't made the make install step.

If you need the error log when oom-killer is invoked, I can post it

Best regards.

Diego Iastrubni

unread,
Jun 18, 2011, 12:00:37 PM6/18/11
to aror...@googlegroups.com
Can you reproduce this with the browser demo available from Qt4?

Jeff

unread,
Jun 18, 2011, 6:56:05 PM6/18/11
to aror...@googlegroups.com
Hi,

No problem with the demo, it runs with an error but it runs well. 

root@minideb:/usr/local/Qt/demos/embedded/anomaly# ./anomaly -qws
Application asked to unregister timer 0x1d000004 which is not registered in this thread. Fix application.



Here is the log on the serial console for arora:

root@minideb:~# arora -qws                          
arora invoked oom-killer: gfp_mask=0x201da, order=0, oom_adj=0, oom_score_adj=0                                                                             
[<c0030320>] (unwind_backtrace+0x0/0xf0) from [<c00716a8>] (T.374+0x50/0x154)                                                                             
[<c00716a8>] (T.374+0x50/0x154) from [<c00717e8>] (T.373+0x3c/0x22c)                                                                    
[<c00717e8>] (T.373+0x3c/0x22c) from [<c0071c20>] (out_of_memory+0x248/0x300)                                                                             
[<c0071c20>] (out_of_memory+0x248/0x300) from [<c0074cfc>] (__alloc_pages_nodema                                                                                
sk+0x4b8/0x638)               
[<c0074cfc>] (__alloc_pages_nodemask+0x4b8/0x638) from [<c0070724>] (filemap_fau                                                                                
lt+0x2b8/0x3b0)               
[<c0070724>] (filemap_fault+0x2b8/0x3b0) from [<c00831e4>] (__do_fault+0x50/0x3b                                                                                
4)  
[<c00831e4>] (__do_fault+0x50/0x3b4) from [<c00840e4>] (handle_pte_fault+0x24c/0                                                                                
x590)     
[<c00840e4>] (handle_pte_fault+0x24c/0x590) from [<c0084870>] (handle_mm_fault+0                                                                                
xa0/0xb4)         
[<c0084870>] (handle_mm_fault+0xa0/0xb4) from [<c003109c>] (do_page_fault+0xdc/0                                                                                
x1c4)     
[<c003109c>] (do_page_fault+0xdc/0x1c4) from [<c002b23c>] (do_PrefetchAbort+0x34                                                                                
/0x94)      
[<c002b23c>] (do_PrefetchAbort+0x34/0x94) from [<c002bec0>] (ret_from_exception+                                                                                
0x0/0x10)         
Exception stack(0xc3065fb0 to 0xc3065ff8)                                         
5fa0:                                     0461f6dc 046421b8 bedd150c 0000005c                                                                             
5fc0: 00000000 0461f6dc 00000002 00000000 0461f6da 00000001 bedd15bc ffffffff                                                                             
5fe0: 42443080 bedcd368 421c36d4 421b8c6c 60000010 ffffffff                                                           
Mem-info:         
Normal per-cpu:               
CPU    0: hi:   18, btch:   3 usd:   2                                      
active_anon:12728 inactive_anon:30 isolated_anon:0                                                  
 active_file:0 inactive_file:42 isolated_file:0                                               
 unevictable:0 dirty:0 writeback:0 unstable:0                                             
 free:255 slab_reclaimable:163 slab_unreclaimable:951                                                     
 mapped:51 shmem:32 pagetables:134 bo                                    
Normal free:1020kB min:1016kB low:1268kB high:1524kB active_anon:50912kB inactiv                                                                                
e_anon:120kB active_file:0kB inactive_file:168kB unevictable:0kB isolated(anon):                                                                                
0kB isolated(file):0kB present:65024kB mlocked:0kB dirty:0kB writeback:0kB mappe                                                                                
d:204kB shmem:128kB slab_reclaimable:652kB slab_unreclaimable:3804kB kernel_stac                                                                                
k:416kB pagetables:536kB unstable:0kB bounce:0kB writeback_tmp:0kB pages_scanned                                                                                
:1 all_unreclaimable? yes                         
lowmem_reserve[]: 0 0                     
Normal: 27*4kB 6*8kB 2*16kB 8*32kB 7*64kB 1*128kB 0*256kB 0*512                                                             
8kB 0*4096kB = 1020kB                     
82 total pagecache pages                        
0 pages in swap cache                     
Swap cache stats: add 0, delete 0, find 0/0                                           
Free swap  = 0kB                
Total swap = 0kB                
16384 pages of RAM                  
363 free pages              
1270 reserved pages                   
770 slab pages              
160 pages shared
0 pages swap cached
[ pid ]   uid  tgid total_vm      rss cpu oom_adj oom_score_adj name
[  809]     0   809      624      101   0     -17         -1000 udevd
[  911]     0   911      623      102   0     -17         -1000 udevd
[ 1122]     0  1122     1333       77   0       0             0 wpa_supplicant
[ 1142]     0  1142      575       65   0       0             0 dhclient
[ 1228]     0  1228     6917      104   0       0             0 rsyslogd
[ 1260]     0  1260      618       38   0       0             0 cron
[ 1269]     0  1269     1469       90   0     -17         -1000 sshd
[ 1288]     0  1288      424       17   0       0             0 getty
[ 1289]     0  1289      424       17   0       0             0 getty
[ 1290]     0  1290      424       17   0       0             0 getty
[ 1291]     0  1291      424       17   0       0             0 getty
[ 1292]     0  1292      424       17   0       0             0 getty
[ 1293]     0  1293      424       17   0       0             0 getty
[ 1294]     0  1294      788       69   0       0             0 login
[ 1295]     0  1295      623      100   0     -17         -1000 udevd
[ 1297]     0  1297      804       96   0       0             0 bash
[ 1301]     0  1301    29656    11911   0       0             0 arora
Out of memory: Kill process 1301 (arora) score 761 or sacrifice child
Killed process 1301 (arora) total-vm:118624kB, anon-rss:47440kB, file-rss:204kB
Killed
Reply all
Reply to author
Forward
0 new messages