I am running into some issues on a board that is similar to
a AT91RM9200-EK board. It has the same processor, but slightly different nor
flash, a nand flash, and extra peripherals. Both systems will boot the kernel
and a filesystem. However, when I tftp a file of a certain size (greater than
900k, for example), the custom board will crash the kernel. If I do a larger
file on the EK board, it works fine (using busybox). In fact, when it tries to
write a file when there is no space, it will stop the transfer without crashing
the kernel. It normally results in the scheduler in wake_up_common to
get out in the weeds with a bad pointer, and I am wondering if it is something
setup dealing with iomem, mmap or something like it but do not know where to
start. Basically, it sees a virtual address and I wonder if it is
mapped incorrectly where it thinks it is in place A but really should be in
place B. I have the strace output below where it is running the tftp transfer.
This is not limited to tftp as I am also running into issues trying to run
tiny-x where it will run just fine on the ek board, but crash on the custom
board. Both have the same exact file system. ANY thoughts/ideas, things to try would be most welcomed.
Thanks! Christopher SYS_292(0x5, 0xb6260, 0x204, 0, 0xbee93be4) = 516 write(4,
")))333)))\6\6\006999333999333999)))33"..., 512) = 512 SYS_290(0x5, 0xb6058, 0x4, 0, 0xb6044) = 4 select(6, [5], NULL, NULL, {5, 0}) = 1 (in [5], left
{4, 990000}) SYS_292(0x5, 0xb6260, 0x204, 0, 0xbee93be4) = 516 write(4, "\6)))\0\0\000[ 193.500000] Unable to handle
kernel paging request at virtual address 29292933 [ 193.500000] pgd = c1f4c000 [ 193.500000] [29292933] *pgd=00000000 [ 193.500000] Internal error: Oops: 3 [#1] [ 193.500000] CPU: 0 [ 193.500000] PC is at __wake_up_common+0x1c/0xa0 [ 193.500000] LR is at __wake_up+0x2c/0x34 [ 193.500000] pc : [<c0032374>] lr :
[<c0032424>] Not tainted [ 193.500000] sp : c1f39ca4 ip : 29292927 fp : c1f39ccc [ 193.500000] r10: 00000000 r9 : 00000003 r8 : c0280000 [ 193.500000] r7 : 00000200 r6 : c00000c0 r5 : c1f38000
r4 : 00000013 [ 193.500000] r3 : 00000000 r2 : 00000001 r1 : 00000003
r0 : 29292933 [ 193.500000] Flags: nzcv IRQs off FIQs on Mode SVC_32
Segment user [ 193.500000] Control: C000717F [ 193.500000] Table: 21F4C000 DAC: 00000015 [ 193.500000] Process tftp (pid: 755, stack limit =
0xc1f38250) [ 193.500000] Stack: (0xc1f39ca4 to 0xc1f3a000) [ 193.500000] 9ca0: 00000013 c1f38000 00000200
00000200 c0280000 000b6 464 00000000 |