Welcome! Log In Create A New Profile

Advanced

Page faults on wheezy + pogoplug

Posted by shockingpink 
Page faults on wheezy + pogoplug
May 15, 2012 09:10PM
I've got a really irritating problem and am not shure where to look. I get a kernel page fault every time I try to compile something. Has anyone else seen this?

My next step is probably to try a custom kernel or an old one. Recommendations?

Background:


Pogoplug E02, fresh install of uboot & Wheezy. The disk is a western digital USB drive adapter with a SATA SSD.
Linux hostname 3.2.0-2-kirkwood #1 Mon Apr 30 23:13:18 UTC 2012 armv5tel GNU/Linux
All software runs fine, modules load, play sound. It all looks good. ... until I try to compile something.
I've tried removing the soundcard, no difference there.

# starting with netcat, just more complicated than hello world.
cc -s -o nc netcat.c
cc: internal compiler error: Segmentation fault (program as)
Please submit a full bug report,

# where did it die?
strace -f gcc netcat.c
[snip]
[pid 1357] mmap2(NULL, 266240, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb6918000
[pid 1357] munmap(0xb6918000, 266240) = 0
[pid 1357] brk(0x6b0000) = 0x6b0000
[pid 1357] fstat64(3, {st_mode=S_IFREG|0600, st_size=0, ...}) = 0
[pid 1357] mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb6958000
[pid 1357] _llseek(3, 16384, [16384], SEEK_SET) = 0
[pid 1357] read(3, "", 2204) = 0
[pid 1357] _llseek(3, 2204, [18588], SEEK_CUR) = 0
[pid 1357] write(3, "\0netcat.c\0$d\0unknown\0p_tcp\0p_udp"..., 919) = 919
[pid 1357] _llseek(3, 0, [0], SEEK_SET) = 0
[pid 1357] read(3, <unfinished ...>
[pid 1357] +++ killed by SIGSEGV +++
Process 1355 resumed
<... wait4 resumed> [{WIFSIGNALED(s) && WTERMSIG(s) == SIGSEGV}], 0, NULL) = 1357

# looks reasonable from the compiler, what about kernel?

dmesg
[ 1916.090458] note: as[1337] exited with preempt_count 1
[ 1916.095623] BUG: scheduling while atomic: as/1337/0x40000001
[ 1916.101313] Modules linked in: ipv6 snd_usb_audio snd_usbmidi_lib snd_hwdep snd_pcm_oss snd_mixer_oss snd_pcm snd_page_alloc snd_seq_midi snd_seq_midi_event snd_rawmidi snd_seq snd_seq_device hmac snd_timer snd soundcore sha1_generic mv_cesa aes_generic ext2 mbcache sd_mod crc_t10dif usb_storage uas scsi_mod ehci_hcd usbcore mvsdio mmc_core usb_common mv643xx_eth inet_lro libphy
[ 1916.135355] [<c0013650>] (unwind_backtrace+0x0/0xe0) from [<c02bd274>] (__schedule+0x4c/0x488)
[ 1916.144034] [<c02bd274>] (__schedule+0x4c/0x488) from [<c001d52c>] (__cond_resched+0x24/0x34)
[ 1916.152625] [<c001d52c>] (__cond_resched+0x24/0x34) from [<c02bd740>] (_cond_resched+0x38/0x44)
[ 1916.161381] [<c02bd740>] (_cond_resched+0x38/0x44) from [<c02be6e4>] (down_read+0xc/0x18)
[ 1916.169611] [<c02be6e4>] (down_read+0xc/0x18) from [<c0055474>] (acct_collect+0x40/0x198)
[ 1916.177831] [<c0055474>] (acct_collect+0x40/0x198) from [<c0026ba0>] (do_exit+0x1e8/0x6dc)
[ 1916.186231] [<c0026ba0>] (do_exit+0x1e8/0x6dc) from [<c0011288>] (die+0x2fc/0x33c)
[ 1916.193856] [<c0011288>] (die+0x2fc/0x33c) from [<c02ba880>] (__do_kernel_fault.part.4+0x54/0x74)
[ 1916.202792] [<c02ba880>] (__do_kernel_fault.part.4+0x54/0x74) from [<c00148fc>] (do_page_fault+0x280/0x29c)
[ 1916.212599] [<c00148fc>] (do_page_fault+0x280/0x29c) from [<c0008388>] (do_DataAbort+0x34/0x98)
[ 1916.221353] [<c0008388>] (do_DataAbort+0x34/0x98) from [<c000da58>] (__dabt_svc+0x38/0x60)
[ 1916.229664] Exception stack(0xcfbc7da8 to 0xcfbc7df0)
[ 1916.234743] 7da0: 400f4000 10ffd000 00000f80 00000020 00001000 400f4000
[ 1916.242967] 7dc0: cfbc6000 00000001 10ffd000 cfbc7f00 00001000 c0eb8fa0 00000000 cfbc7df4
[ 1916.251195] 7de0: c019c874 c0192984 20000013 ffffffff
[ 1916.256278] [<c000da58>] (__dabt_svc+0x38/0x60) from [<c0192984>] (memcpy+0x64/0x3a4)
[ 1932.874164] Unable to handle kernel paging request at virtual address 10ffd000
[ 1932.881462] pgd = cfbbc000
[ 1932.884182] [10ffd000] *pgd=00000000
[ 1932.887777] Internal error: Oops: 5 [#2]
[ 1932.891715] Modules linked in: ipv6 snd_usb_audio snd_usbmidi_lib snd_hwdep snd_pcm_oss snd_mixer_oss snd_pcm snd_page_alloc snd_seq_midi snd_seq_midi_event snd_rawmidi snd_seq snd_seq_device hmac snd_timer snd soundcore sha1_generic mv_cesa aes_generic ext2 mbcache sd_mod crc_t10dif usb_storage uas scsi_mod ehci_hcd usbcore mvsdio mmc_core usb_common mv643xx_eth inet_lro libphy
[ 1932.925700] CPU: 0 Tainted: G D (3.2.0-2-kirkwood #1)
[ 1932.932002] PC is at memcpy+0x64/0x3a4
[ 1932.935766] LR is at __copy_to_user_memcpy+0xdc/0x12c
[ 1932.940839] pc : [<c0192984>] lr : [<c019c874>] psr: 20000013
[ 1932.940844] sp : ce7cbdf4 ip : 00000000 fp : c0eb8fa0
[ 1932.952381] r10: 00001000 r9 : ce7cbf00 r8 : 10ffd000
[ 1932.957631] r7 : 00000001 r6 : ce7ca000 r5 : 400d5000 r4 : 00001000
[ 1932.964190] r3 : 00000020 r2 : 00000f80 r1 : 10ffd000 r0 : 400d5000
[ 1932.970747] Flags: nzCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment user
[ 1932.977915] Control: 0005397f Table: 0fbbc000 DAC: 00000015
[ 1932.983687] Process as (pid: 1342, stack limit = 0xce7ca270)
[ 1932.989372] Stack: (0xce7cbdf4 to 0xce7cc000)
[ 1932.993752] bde0: 400d5000 ce7ca000 00000001
[ 1933.001970] be00: 10ffd000 400d5000 00001000 c019c874 cfbd3354 ce7e30b4 00001000 ce7cbe80
[ 1933.010192] be20: 00001000 00000000 c0eb8fa0 00001000 ce7ca000 c0085518 00001000 00000000
[ 1933.018415] be40: cf946e38 00000000 00000000 c11d0d40 ce7cbf48 c009a07c 000200da 00000000
[ 1933.026629] be60: 00000000 c11d0d40 00000000 ce7ca000 00001000 cf946ef8 00000000 00000001
[ 1933.034844] be80: 00000000 00001000 400d5000 00000000 00001000 c0eb8fa0 ce7cbe94 c11d0d40
[ 1933.043067] bea0: ce7cbf80 fffffdee ce7cbf80 00001000 ce7ca000 00000000 00000000 c00bd914
[ 1933.051289] bec0: 00000000 00000000 400d6000 400d5000 00000000 00000001 ffffffff c11d0d40
[ 1933.059503] bee0: 00000000 00000000 00000000 00000000 c100b400 00020000 00000000 00000000
[ 1933.067717] bf00: 00000000 00000000 00000000 00000000 00001000 c0157e88 00001000 00000000
[ 1933.075932] bf20: c11d0d40 00001000 00000000 c00bdc80 000007ff 00000000 0000008c c00bd694
[ 1933.084155] bf40: 00000000 c11d0d40 400d5000 00001000 00001000 c11d0d40 400d5000 c00be0f4
[ 1933.092378] bf60: c11d0d40 400d5000 c11d0d40 400d5000 00000000 00000000 00001000 c00be1f8
[ 1933.100600] bf80: 00000000 00000000 00001000 00000000 01f1c2e0 00000034 00000000 00000003
[ 1933.108816] bfa0: c000e028 c000de80 01f1c2e0 00000034 00000003 400d5000 00001000 00000000
[ 1933.117038] bfc0: 01f1c2e0 00000034 00000000 00000003 00000000 400d5000 00000034 00000000
[ 1933.125252] bfe0: 00000000 bee2a1f0 4023f100 4029295c 60000010 00000003 00000000 00000000
[ 1933.133468] Code: ba000002 f5d1f03c f5d1f05c f5d1f07c (e8b151f8)
[ 1933.139816] ---[ end trace 673610ac15753c03 ]---
Re: Page faults on wheezy + pogoplug
May 15, 2012 09:26PM
for grins and giggles you can try the kernel in this section : It is a 3.3.2 Debian profile kernel that supports a few other machines... it could be a holdover problem on 3.2...

=====================================================
Re: Page faults on wheezy + pogoplug
May 15, 2012 09:29PM
"The kernel in this section"
Say more about this section....
Re: Page faults on wheezy + pogoplug
May 15, 2012 09:35PM
http://forum.doozan.com/read.php?2,7676

good luck, hope you get it working... if you don't you can always try Ubuntu + CodeSourcery toolchain... very, very fast...

=====================================================
Re: Page faults on wheezy + pogoplug
May 15, 2012 10:00PM
Falling back to the 3.1 kernel from http://snapshot.debian.org/archive/debian/20120114T153156Z/pool/main/l/linux-2.6/linux-image-3.1.0-1-kirkwood_3.1.6-1_armel.deb

worked! compiling works without page faults!

I'll go try the 3.3 kernel, but at least I know that it's a kernel problem. Hopefully this saves other people some time.
Re: Page faults on wheezy + pogoplug
May 15, 2012 10:12PM
Great!

=====================================================
Author:

Your Email:


Subject:


Spam prevention:
Please, enter the code that you see below in the input field. This is for blocking bots that try to post this form automatically. If the code is hard to read, then just try to guess it right. If you enter the wrong code, a new image is created and you get another chance to enter it right.
Message: